interrupted isinterrupted interrupt

在java Thread中,關於中斷有三個方法,常常搞混,如今簡單分析:java

 interrupted

類方法  ,經常使用於線程內部檢測當前線程是否 中斷,而且清除中斷標誌,也就是說  以下代碼,打印的是false。spa

if(Thread.interrupted()){
    System.out.println(Thread.interrupted());
}

isinterrupted

實例方法,用於在線程外線程 間調用,檢測其它線程是否處於中斷。線程

 

interrupt

實例 方法,通常用於線程間調用 t.interrupt,也能夠在本線程調用 ,以下。it

Thread.currentThread().interrupt();

 

而在使用過程當中,有些方法會自動拋出 中斷異常,如sleep,await 等,而對於 方法內部本身拋出的異常,須要主動的catch或者繼續拋出該異常。方法

相關文章
相關標籤/搜索