我通过Spring TaskScheduler.schedule(Runnable,Trigger)安排了一个定期任务.
鉴于返回的ScheduledFuture,有没有办法检查,如果任务当前正在运行?
解决方法:
你可以像这样改变Runnable:
class Runner implements Runnable{
public volatile boolean RUNNING = false;
public void run(){
RUNNING = true;
try{
// Your code
} finally {
RUNNING = false;
}
}
}
编辑
使用boolean的思维操作是原子的,不需要是volatile.