观测线程状态

NEW new状态

RUNNABLE 运行状态

TERMINATED 死亡状态

//观测测试线程状态
public class TestState {
   public static void main(String[] args) throws InterruptedException {
       Thread thread =new Thread(()->{
           for (int i = 0; i < 5; i++) {
               try {
                   Thread.sleep(1000);
              } catch (InterruptedException e) {
                   e.printStackTrace();
              }
          }
           System.out.println("////////");
      });


       //观测状态
       Thread.State state=thread.getState();
       System.out.println(state);

       //观察启动后
       thread.start();
       state= thread.getState();
       System.out.println(state);//run   RUNNABLE

       while (state!=Thread.State.TERMINATED){ //TERMINATED 线程死亡
           Thread.sleep(100);
           state=thread.getState();//更新线程状态
           System.out.println(state);//输出状态
      }

  }
}

 

posted @ 2021-07-29 08:43  清钦  阅读(28)  评论(0)    收藏  举报