java 多线程-线程的状态
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 多线程-线程的状态相关的知识,希望对你有一定的参考价值。
观察线程的状态State state=Thread对象.getState();
int num=Thread.activeCount();//当前活跃的线程个数
public class n
public static void main(String[]args) throws InterruptedException
Thread t =new Thread(()->
for(int i=0;i<5;i++)
try
Thread.sleep(100);
catch (InterruptedException e)
e.printStackTrace();
System.out.println("a");
);
//观察状态
State state=t.getState();
System.out.println(state);//创建的对象处于NEW新生状态
t.start();
state=t.getState();
System.out.println(state);//处于RUNNABLE
while(state!=Thread.State.TERMINATED)
System.out.println(num);
Thread.sleep(200);
state =t.getState();//TIMED_WAITING
System.out.println(state);
**或者:**
while(true)
int num=Thread.activeCount();//当前活动的线程数,包括主线程一共有两个
if(num==1)
break;
System.out.println(num);
Thread.sleep(200);
state=t.getState();
System.out.println(state);
state=t.getState();
System.out.println(state);//TERMINATED
以上是关于java 多线程-线程的状态的主要内容,如果未能解决你的问题,请参考以下文章