Status do tópico:
-
Estado do segmento. Um tópico pode estar em um dos seguintes estados:
NEW
Threads que não foram iniciados estão neste estado.RUNNABLE
O encadeamento em execução na máquina virtual Java está neste estado.BLOCKED
Os threads que estão bloqueados à espera do bloqueio do monitor estão neste estado.WAITING
Um encadeamento que está esperando que outro encadeamento execute uma ação específica está neste estado.TIMED_WAITING
O encadeamento que está aguardando outro encadeamento para executar uma ação durante o tempo de espera especificado está neste estado.TERMINATED
Os threads que saíram estão neste estado.
Um thread pode estar em um determinado estado em um determinado momento. Esses estados são estados de máquina virtual que não refletem o estado de nenhum thread do sistema operacional.
-
Caso
package Thread; //观察测试线程的状态 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 //只要线程不终止,就一直输出状态 while (state!=Thread.State.TERMINATED){ Thread.sleep(100); //更新线程状态 state=thread.getState(); System.out.println(state); } } }