gpt4 book ai didi

java - 有什么方法可以立即停止线程吗?

转载 作者:行者123 更新时间:2023-12-01 23:53:34 26 4
gpt4 key购买 nike

我想知道Java中是否有某种方法可以立即停止线程。我不想检查它的中断状态,我需要立即停止它。这是因为在线程的 run 方法中有很多计算,为了使用中断实现我想要的效果,我必须在各处注入(inject)状态检查。那么有没有办法立即中断线程呢?也许 stop() 方法?我知道据说由于死锁而不应使用它,但如果它可以解决我的问题(即使它会导致另一个问题;))我可以使用它。所以? P.S.我知道还有其他类似的问题,但到处都有人对 Interrupted() 提出类似的问题,这不适合我。

最佳答案

The question/answer that @Alya'aGamal points to是正确的。

如果您的应用的设计假设强制停止线程、进程或程序(例如使用 kill -9 或通过 Windows 上的任务管理器停止它)是可以做的事情,那么您确实需要证明这一点,因为这听起来是一个糟糕的设计选择。如果你使用了别人的应用程序,而按需关闭它的唯一方法就是强行停止它,你不认为这是一个相当大的缺陷吗?

如果您有长时间运行的循环或算法,并且能够在任意点停止它们非常重要,那么您必须进行某种常规状态或信号检查,以便执行以下操作:这是正确的。

始终以一种良好、友好、优雅的方式设计您的应用程序,以便它们可以从除您无法控制的事物之外的所有情况下退出(例如另一个应用程序开始使 CPU 饱和、硬盘坏了、RAM芯片被烧毁、 meteor 撞击地球等)

关于java - 有什么方法可以立即停止线程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15979962/

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