歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java終止線程的方法

Java終止線程的方法

日期:2017/3/1 10:00:23   编辑:Linux編程

Java中斷線程的方法有很多,最簡單的是直接調用stop()和subspend()方法,但是這兩種方法並不推薦使用,因為它們有可能導致數據的不同步而發生死鎖現象。如果真的需要終止一個線程,可以使用以下幾種方法:

1、讓線程的run()方法執行完,線程自然結束。(這種方法最好)

2、通過輪詢和共享標志位的方法來結束線程,例如while(flag){},flag的初始值設為真,當需要結束時,將flag的值設為false。(這種方法也不很好,因為如果while(flag){}方法阻塞了,則flag會失效)

3、通過調用interrupt方法和捕獲InterruptedException異常來終止線程。

實際上最好的方法是使用線程池,當線程不用了,就讓它sleep並放進隊列中,這樣可以最大限度地利用資源。

Copyright © Linux教程網 All Rights Reserved