线程状态观测

public static void main(String[] args) {
    Thread thread=new Thread(()->{
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
        }
        System.out.println("子线程");
    });
    //创建完对象后,观察线程的状态
    Thread.State state = thread.getState();
    System.out.println(state);
    //start后线程进入就绪状态
    thread.start();
    System.out.println(thread.getState());
    while (state!=Thread.State.TERMINATED){
        //若线程不死 就一直输出
        //等待状态说明执行中,出现了阻塞睡眠
        try {
            Thread.sleep(100);
            state=thread.getState();
            System.out.println(state);
        } catch (InterruptedException e) {
        }
    }
    //线程停止之后不能再次运行,会出现异常
    //Exception in thread "main" java.lang.IllegalThreadStateException
    //at java.lang.Thread.start(Thread.java:708)
    //at com.zz.state.TestThreadState.main(TestThreadState.java:40)
    //thread.start();
}