我什么都试过了。这也是如何停止在 Java.util.Timer 类中安排的任务
我有一个实现 java.util.TimerTask 的任务
我以两种方式调用该任务:
我像这样安排定时器:
timer.schedule(timerTask, 60 * 1000);
有时我需要立即开始这项工作,如果有任何工作,它必须取消 timerTask
取消当前工作();timer.schedule(timerTask, 0);
此实现不会停止当前工作:(文档说:如果在此调用发生时任务正在运行,则任务将运行到完成,但永远不会再次运行)
但我需要它停下来。
public static void cancelCurrentwork() {
if (timerTask!= null) {
timerTask.cancel();
}
}
这个实现只是取消了定时器,但是让当前正在做的任务完成。
public static void cancelCurrentwork() {
if (timer!= null) {
timer.cancel();
}
}
计时器中有没有办法停止当前正在执行的任务,比如 Thread.kill() 之类的?当我需要停止该任务时,我希望它释放所有数据。