image.png

    1. package com.pln.state;
    2. public class TestState {
    3. public static void main(String[] args) throws InterruptedException {
    4. Thread thread = new Thread(()->{
    5. for (int i = 0; i < 5; i++) {
    6. try {
    7. Thread.sleep(1000);
    8. } catch (InterruptedException e) {
    9. e.printStackTrace();
    10. }
    11. }
    12. System.out.println("--------------------");
    13. });
    14. //观察状态
    15. Thread.State state = thread.getState();
    16. System.out.println(state);//new状态
    17. //观察启动后的状态
    18. thread.start();
    19. state = thread.getState();
    20. System.out.println(state);//run
    21. while (state != Thread.State.TERMINATED){ //只要线程不终止就一直输出状态
    22. Thread.sleep(100);
    23. state = thread.getState();
    24. System.out.println(state);//run
    25. }
    26. }
    27. }