我尝试了一切.这一个也是
How to stop the task scheduled in Java.util.Timer class
我有一个实现java.util.TimerTask的任务
我用两种方式称这个任务:
>我安排这样的计时器:
timer.schedule(timerTask,60 * 1000);
>有时我需要立即开始工作,如果有任何工作,它必须取消timerTask
cancelCurrentWork();
timer.schedule(timerTask,0);
此实现不会停止当前的工作:
(文档说:如果在发生此调用时任务正在运行,任务将运行完成,但永远不会再运行)
但我需要它停下来.
public static void cancelCurrentwork() {
if (timerTask!= null) {
timerTask.cancel();
}
}
这个实现只是取消了计时器,但目前正在完成任务.
public static void cancelCurrentwork() {
if (timer!= null) {
timer.cancel();
}
}
在计时器中有一种方法可以停止当前正在执行的操作,比如Thread.kill()之类的东西吗?当我需要停止任务时,我希望它丢失所有数据.