如何停止在Java.util.Timer类中计划的任务
我正在使用java.util.timer
类,我使用它的调度方法来执行一些任务,但执行它6次后,我不得不停止它的任务。
我应该怎么做?
在某处保留对定时器的引用,并使用:
timer.cancel();
timer.purge();
停止它正在做的事情。 你可以把这段代码放到你正在执行的任务中,用一个static int
来计算你已经过去的次数,例如
private static int count = 0;
public static void run() {
count++;
if (count >= 6) {
timer.cancel();
timer.purge();
return;
}
... perform task here ....
}
无论是调用cancel()
的Timer
,如果这一切都在做,或cancel()
上TimerTask
如果计时器本身有您希望继续其它任务。
您应该停止计时器上计划的任务:您的计时器:
Timer t = new Timer();
TimerTask tt = new TimerTask() {
@Override
public void run() {
//do something
};
}
t.schedule(tt,1000,1000);
为了停止:
tt.cancel();
t.cancel(); //In order to gracefully terminate the timer thread
注意,取消定时器不会终止正在进行的时间任务。
链接地址: http://www.djcxy.com/p/74899.html上一篇: How to stop the task scheduled in Java.util.Timer class