java--线程状态【转】

1、新建状态

Thread t1 = new Thread();

创建之后,就已经有了相应的内存和其他资源,但是还是处于不可运行状态。

2、就绪状态

当一个线程使用.start()启动之后就处于就绪状态,就会在队列中排队等待被调度。此时已经具备运行状态。

3、运行状态

当一个就绪状态的线程被调度而且分配了CPU资源,就进入了运行状态。此时就会自动调用run()。

4、阻塞状态

当一个对象调用了wait() suspend() sleep()方法,线程就会进入阻塞状态。阻塞时,是不进行排队的,直到导致产生阻塞的因素被消除之后,才会进行在队列中排队(就绪状态)。

5、死亡状态

当一个线程对象调用.stop()方法或者run()方法结束的时候,线程就进入了死亡状态,不在具有运行能力。

原文地址:https://www.cnblogs.com/softidea/p/3402260.html