java – 检查周期性ScheduledFuture是否正在运行

我通过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.

上一篇:linux – 使用现代操作系统调度程序,手动锁定特定CPU /内核的进程是否仍然有意义?


下一篇:检查新间隔是否重叠 – MySQL(或PHP)