package com.dy.common.mw.core;
|
|
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.Logger;
|
|
import java.util.Timer;
|
import java.util.TimerTask;
|
|
/**
|
* @Author: liurunyu
|
* @Date: 2024/11/21 17:13
|
* @Description
|
*/
|
public class CoreConstantTimer extends TimerTask {
|
|
private final static Logger log = LogManager.getLogger(CoreConstantTimer.class.getName()) ;
|
|
private Timer timer;
|
|
private long coreInterval ;
|
|
private CoreTask task ;
|
|
public CoreConstantTimer(long coreInterval, CoreTask task){
|
this.timer = new Timer();
|
this.coreInterval = coreInterval ;
|
this.task = task ;
|
}
|
|
public CoreConstantTimer start(){
|
this.timer.schedule(this, 0 , this.coreInterval);
|
return this ;
|
}
|
|
@Override
|
public void run() {
|
if(task != null){
|
try {
|
task.execute();
|
} catch (Exception e) {
|
log.error("恒久任务" + task.getClass().getName() + "执行时发生异常" + (e.getMessage() == null ? "" : (":" + e.getMessage())), e);
|
}
|
}
|
}
|
}
|