前言
在多線程編程中會需要動態創建線程來執行任務,在完成後釋放該線程,使用Excuotrs創建的線程,提供了shutDown方法進行線程的關閉,但使用原生的Thread和Runable創建的線程池,其stop、destory方法都已經被標爲Deprecate,那究竟該如何關閉線程?
實現邏輯
1、如果線程能正常執行完,執行結束後線程自動關閉,無須特別處理
2、否則需要使用一個標記如下running來控制並跳出線程循環執行體,完成線程的自動關閉
3、如果線程循環執行體存儲阻塞,則在設置running變量,還需要通過interrupt中斷阻塞,使其能夠跳出線程循環執行體,完成線程的自動關閉。
下面是供參考的代碼邏輯:
/**
* @Author 10184538
* @Date 2019/10/28 13:08
**/
public class BgpLsLinkMsgHandlerThread extends Thread