线程可以分四中状态:
1)新建(new):线程对象仅仅是创建,并没有调用start()方法。
2)就绪(runnable):只要调度程序将时间片分配给线程,它便可以立刻运行。
3)死亡(dead):线程的run()方法返回以后。你也可以使用stop()方法,但是这在Java 2 中被废弃。因为这容易使进程进入不稳定状态。
4)阻塞(blocked):线程可以运行,但是由于某个条件阻止了它的运行。当线程为阻塞状态时,调度程序将不会将时间片分给它。
线程进入阻塞的某些原因:1)sleep()方法,使线程进入休眠状态。2)wait()方法,使线程挂起。3)线程等待某个输入/输出的完成。4)线程试图调用某个对象上的同步控制方法,但是该对象锁不可用。5)suspend(),但是Java 2 中被废弃了。
1)新建(new):线程对象仅仅是创建,并没有调用start()方法。
2)就绪(runnable):只要调度程序将时间片分配给线程,它便可以立刻运行。
3)死亡(dead):线程的run()方法返回以后。你也可以使用stop()方法,但是这在Java 2 中被废弃。因为这容易使进程进入不稳定状态。
4)阻塞(blocked):线程可以运行,但是由于某个条件阻止了它的运行。当线程为阻塞状态时,调度程序将不会将时间片分给它。
线程进入阻塞的某些原因:1)sleep()方法,使线程进入休眠状态。2)wait()方法,使线程挂起。3)线程等待某个输入/输出的完成。4)线程试图调用某个对象上的同步控制方法,但是该对象锁不可用。5)suspend(),但是Java 2 中被废弃了。