`
chenzan2010
  • 浏览: 17819 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

java终止线程的方法

阅读更多

java终止线程的方法

中断线程的方法有很多,最简单的是直接调用stop()和subspend()方法,但是这两种方法并不推荐使用,因为它们有可能导致数据的不同步而发生死锁现象。如果真的需要终止一个线程,可以使用以下几种方法:
1、让线程的run()方法执行完,线程自然结束。(这种方法最好)
2、通过轮询和共享标志位的方法来结束线程,例如while(flag){},flag的初始值设为真,当需要结束时,将flag的值设为false。(这种方法也不很好,因为如果while(flag){}方法阻塞了,则flag会失效)
3、通过调用interrupt方法和捕获InterruptedException异常来终止线程。

实际上最好的方法是使用线程池,当线程不用了,就让它sleep并放进队列中,这样可以最大限度地利用资源。

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics