如上图所示,
当创建完线程后,start方法执行后,线程处于运行状态,也可能处于阻塞状态,因为同一时刻CPU只处理一个线程,只有此线程处于运行状态,其他线程虽然拥有运行资格,但是没有执行权,所以处于阻塞状态。
当正在运行的线程,调用sleep方法后,或者wait方法后,线程处于冻结状态,意味着对cpu放弃了执行权,当sleep时间到了之后,或者被其他线程notify唤醒之后,线程恢复了执行权,处于运行或者阻塞状态。
当正在运行的线程stop方法后,线程消亡,或者当线程中执行完run方法里面的代码后,也自动消亡。
如上所述,线程共有5中状态:创建,运行,阻塞,冻结,消亡。 |
|