JavaTutorial-スレッドが生存しているかどうかを判断

5171 ワード

文書ディレクトリ

  • スレッドが生存するか否かを判断する
  • .
  • テストのコードは以下の通りです:
  • 結果
  • まとめ
  • スレッドが生存しているかどうかを判断する

  • メソッドisAlive()の役割は、スレッドがアクティブかどうかをテストすることです.アクティブ状態とは、スレッドが起動したが終了していないことです.すなわち,このスレッドstartの後,生存していると考えられる.

  • テストのコードは次のとおりです。

    public class AliveThread extends Thread{
    
        @Override
        public void run() {
            super.run();
            System.out.println("run " + "   "  + Thread.currentThread().isAlive());
        }
    }
    
    public class AliveThreadTest extends TestCase {
        public void testRun() throws Exception {
            AliveThread thread = new AliveThread();
            System.out.println("begin == " + thread.isAlive());
            thread.start();
            Thread.sleep(1000);
            System.out.println("end ==" + thread.isAlive());
    
            Thread.sleep(3000);
        }
    }
    
    

    結果

    begin == false
    sleep ==true
    run    true
    end ==false
    
    

    まとめ

  • startの前に、このスレッドは
  • が生存していないと考えられた.
  • runの時、生きている
  • です
  • runメソッドの実行が完了し、
  • が生存しないと考えられる.