【发布时间】:2018-07-19 09:50:22
【问题描述】:
How to stop a running TimerTask
我已经浏览了上面的链接,但我的问题并没有完全解决。
我们可以通过调用timerObj.cancel() 来停止计时器。 cancel 方法的文档清楚地说:
取消 {@code Timer} 和所有计划任务。 如果有 当前运行的任务不受影响。此 {@code Timer} 上不能安排更多任务。后续调用什么都不做
所以我的问题/担心是,
如果很多 TimerTask 被安排在 timer 下,我们如何才能停止所有它们即使它们正在执行各自的 run 方法?有没有办法解决这个问题?
提前致谢。
【问题讨论】:
-
当然有——抢任务杀了——
-
你所说的“完成任务”是什么意思以及如何杀死它们?
-
ok 显示一些不错的代码 - 你按照你的逻辑设置要杀死的条件 - 我没有看到任何代码 - 每个任务都有一个运行,所以去那里设置条件
-
看起来有人已经有了解决方案:*.com/questions/32045360/…
-
如果你想要一个来自 Big Daddy 的漂亮预制命令,不要给你糖果!
标签: java multithreading timer