搜索
编程论坛
→
开发语言
→
『 JAVA论坛 』
→ Java的Timer中,如何取消多个定时任务
标题:
Java的Timer中,如何取消多个定时任务
只看楼主
taotesea
等 级:
新手上路
帖 子:18
专家分:0
注 册:2009-3-16
结帖率:
0
楼主
已结贴
√
问题点数:10 回复次数:3
Java的Timer中,如何取消多个定时任务
例如:
for(int i = 0; i < 100; i++) {
timer.schedule(new TimerTask() {
......
}
}
请问各位大侠,我该如何取消这100个计划时再重新在添加100个定时任务,谢谢了:)
搜索更多相关主题的帖子:
Timer
取消
多个
定时
任务
2017-11-27 13:16
林月儿
来 自:湖南
等 级:
版主
威 望:
138
帖 子:2276
专家分:10647
注 册:2015-3-19
第
2
楼
得分:4
抛个异常捕获吧,虽然有点偏门。
剑栈风樯各苦辛,别时冰雪到时春
2017-11-27 22:50
zhizai
等 级:
新手上路
帖 子:1
专家分:4
注 册:2017-11-29
第
3
楼
得分:4
我感觉, 你可以在循环外面设定一个标记,例如:boolean it=true; 然后在做一个判断if(it){Timer....}, 如果想取消这个循环,那就让it=false,就可以了
2017-11-29 10:28
calix
等 级:
贵宾
威 望:
28
帖 子:249
专家分:1442
注 册:2015-5-4
第
4
楼
得分:4
private static volatile boolean cancel = false;
执行前判断下
@Override
public void run() {
if (cancel) {
this.cancel();
return;
}
....
}
如果想一个个单独取消,可以吧TimerTask放到Map中,用过指定的key找到并cancel,比如:
private static final Map<String, TimerTask> TIME_TASKS = new HashMap<>(100);
2017-12-02 10:43
4
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-482866-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.083691 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved