麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Java > 正文

Java多線程之中斷線程(Interrupt)的使用詳解

2019-11-26 16:08:14
字體:
來源:轉載
供稿:網友

interrupt方法

interrupt字面上是中斷的意思,但在Java里Thread.interrupt()方法實際上通過某種方式通知線程,并不會直接中止該線程。具體做什么事情由寫代碼的人決定,通常我們會中止該線程。

    如果線程在調用Object類的wait()、wait(long)或wait(long, int)方法,或者該類的 join() 、join(long) 、join(long, int) 、sleep(long) 或 sleep(long, int) 方法過程中受阻,則其中斷狀態將被清除,它還將收到一個 InterruptedException。

    如果該線程在可中斷的通道(java.nio.channels.InterruptibleChannel)上的 I/O 操作中受阻,則該通道將被關閉,該線程的中斷狀態將被設置并且該線程將收到一個 ClosedByInterruptException。

    如果該線程在一個 Selector (java.nio.channels.Selector) 中受阻,則該線程的中斷狀態將被設置,它將立即從選擇操作返回,并可能帶有一個非零值,就好像調用了選擇器的 wakeup 方法一樣。

    如果以前的條件都沒有保存,則該線程的中斷狀態將被設置。

    中斷一個不處于活動狀態的線程不需要任何作用。

檢測中斷

如何檢測中斷決定于線程所做的事情。

    如果線程調用可以拋出InterruptException的方法,則捕獲InterruptException,然后在catch塊中處理(通常是退出run方法以中斷線程)

    如果調用其它方法,則可以在空閑時檢查Thread.interrupted以判斷是否收到中斷信號,確認收到中斷信號后進行處理。可以拋出一個InterruptException從而和前一種處理方法保持一致

中斷狀態

線程的中斷機制是使用中斷狀態這一內部標志實現的。中斷狀態在調用線程的interrupt()方法時被設置(參考上面的interrupt方法說明)。

 

有兩種方法可以取得線程的中斷狀態:

    調用靜態方法Thread.interrupted(),該方法除了返回當前線程的中斷狀態外,還會清除當前線程的中斷狀態。換句話說,如果連續兩次調用該方法,則第二次調用將返回 false(在第一次調用已清除了其中斷狀態之后,且第二次調用檢驗完中斷狀態前,當前線程再次中斷的情況除外)。

    調用指定線程的isInterrupted()方法,該方法只返回指定線程的中斷狀態而不影響該線程的中斷狀態。

有兩種方法可以清除線程的中斷狀態:

    如上所述,調用Thread.interrupted()

    調用該線程的interrupt()方法引發InterruptedException的時候同時就已經清除了所在線程的中斷狀態,包括Object類的wait()、wait(long)或wait(long, int)方法,或者線程的 join() 、join(long) 、join(long, int) 、sleep(long) 或 sleep(long, int) 方法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日本在线不卡一区二区 | 亚洲欧美不卡视频 | 欧美粗暴analvideos | 中文字幕22页 | 91成人免费视频 | 欧美高清一级片 | 国产视频在线观看一区二区三区 | 性欧美极品xxxx欧美一区二区 | 久久不射电影 | 国产午夜电影在线观看 | 亚洲五码在线观看视频 | 成人精品一区二区三区中文字幕 | 国产一级毛片高清视频完整版 | 国产美女一区二区在线观看 | 九九午夜 | 成人做爽爽爽爽免费国产软件 | 加勒比色综合 | 亚洲人成电影在线 | 成人福利网 | 亚洲第一色片 | 免费看性xxx高清视频自由 | 牛牛热这里只有精品 | 亚洲视频在线观看免费视频 | 精品国产一区二区三区久久久蜜月 | 亚洲九九爱| 九九热色 | 国产精品久久国产精麻豆96堂 | 黄色大片在线观看 | 中文字幕国产一区 | 亚洲电影在线观看高清免费 | 在线观看免费毛片视频 | 天天色综合2 | 久久99精品久久久久久秒播蜜臀 | 竹内纱里奈和大战黑人 | 污视频在线免费播放 | qyl在线视频精品免费观看 | 国产精品久久久免费观看 | 日韩精品网站在线观看 | 在线成人免费网站 | 草草在线观看 | 2021国产精品|