gpt4 book ai didi

java - 如何停止已经执行的TimerTask?

转载 作者:行者123 更新时间:2023-12-03 13:08:26 25 4
gpt4 key购买 nike

How to stop a running TimerTask

我已经通过上面的链接,但我的问题并未完全解决。

我们可以通过调用timerObj.cancel()来停止Timer。 cancel方法的文档明确指出:

Cancels the {@code Timer} and all scheduled tasks. If there is a currently running task it is not affected. No more tasks may be scheduled on this {@code Timer}. Subsequent calls do nothing



所以我的问题是

如果许多TimerTasks是根据 timer安排的,即使它们正在执行各自的 run方法,我们如何也可以停止所有 ?有办法解决吗?

提前致谢。

最佳答案

您应该设计run方法,以便它可以自行确定何时终止,例如,通过轮询AtomicBoolean的状态。

即使您要find the thread运行TimerTask,在线程上调用stop()或类似方法也将是inherently unsafe

关于java - 如何停止已经执行的TimerTask?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48692042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com