JAVA中断线程的方法,第1张

JAVA中断线程的方法,第2张

线程。停,线程。暂停,线程。Resume和Runtime.runFinalizersOnExit,这些终止线程运行的方法,已经被放弃了,用起来极其不安全!

现在要想安全有效地终止一个线程,应该采用以下方法:

1、线程正常执行,正常结束。
也就是说,如果run方法结束,线程就会正常结束。

2、监控一些情况,结束线程的不间断运行。
但是,往往有些线程是伺服线程。它们需要长时间运行,只有满足一定的外部条件,这些线程才能被关闭。
通常,当(true)时,它们在无限循环中执行。
例如:
@ override
public void run(){

while(true){
some work();
if(已完成){
break;
}
试试{
thread . sleep(10000);
} catch(中断异常e) {
/* TODO自动生成catch块
*
*/
e . print stack trace();
}
}

}
我们可以检查外部条件,看看是否需要关闭while无限循环中的当前线程。如果是,break,跳出无限循环,或者抛出异常,跳出无限循环,结束线程。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » JAVA中断线程的方法

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情