您好,登錄后才能下訂單哦!
這篇文章給大家介紹使用Java如何檢測線程中斷狀態,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
一 代碼
public class InterruptCheck { public static void main( String[] args ) throws Exception { // sleepThread不停嘗試睡眠 Thread sleepThread = new Thread(new SleepRunner(), "SleepThread"); sleepThread.setDaemon(true); // busyThread不停運行 Thread busyThread = new Thread(new BusyRunner(), "BusyThread"); busyThread.setDaemon(true); sleepThread.start(); busyThread.start(); // 休眠5秒,讓sleepThread和busyThread充分運行 Thread.sleep(5000); sleepThread.interrupt(); busyThread.interrupt(); System.out.println("休眠線程中斷標識位為: " + sleepThread.isInterrupted()); System.out.println("忙碌線程中斷標識位為: " + busyThread.isInterrupted()); // 防止sleepThread和busyThread立刻退出 Thread.sleep(2000); } static class SleepRunner implements Runnable { @Override public void run() { try { while (true) { Thread.sleep(10000); } } catch (InterruptedException e) { System.out.println("線程被中斷" ); } } } static class BusyRunner implements Runnable { @Override public void run() { while (true) ;//do nothing } } }
二 運行
線程被中斷
休眠線程中斷標識位為: false
忙碌線程中斷標識位為: true
關于使用Java如何檢測線程中斷狀態就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。