熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java高級技術 >> 正文

線程中斷(interrupt)使用方法

2022-06-13   來源: Java高級技術 

  前日研究Java線程問題發現很多書上都沒有提到interrput()方法提到的也說用interrupt()方法無法實現線程中斷可是經過我的不斷嘗試竟然使用interrupt()方法和isInterrupted()方法實現了線程的中斷如果這個方法可以那麼除了使用共享變量的方式可以中斷線程之外又多了一種中斷線程的方法希望這個方法對大家有所幫助

  

  class ThreadA extends Thread{
      int count = ;
      public void run(){
          Systemoutprintln(getName() + 將要運行);
          while (!thisisInterrupted()){
               Systemoutprintln(getName() + 運行中 + count++);
               try{ 
                      Threadsleep();   // 休眠毫秒
               }catch(InterruptedException e){  // 退出阻塞態時將捕獲異常
                      Systemoutprintln(getName()+從阻塞態中退出);   
                      thisinterrupt();  // 改變線程狀態使循環結束
               }
          }
          Systemoutprintln(getName() + 已經終止!); 
    }
}
class ThreadDemo{
      public static void main(String argv[]) throws InterruptedException{
             ThreadA ta = new ThreadA();
              tasetName(ThreadA);  
              tastart();  
              Threadsleep();// 主線程休眠毫秒等待其他線程執行
              Systemoutprintln(tagetName()+ 正在被中斷);
              tainterrupt();  //  中斷線程ThreadA
      }
}


From:http://tw.wingwit.com/Article/program/Java/gj/201311/27604.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.