问题
单项选择题
线程在生命周期中要经历五种状态,在不使用stop()方法的情况下,线程当前处于终止状态,则它的上一个状态是( )。
A.新建状态
B.阻塞状态
C.可运行状态
D.运行状态
答案
参考答案:D
解析: 线程的生命周期过程为:(1)线程被创建后,并不马上启动,而是进入新建状态。此时线程没有分配资源,只能使用start( )和stop( )两个控制方法;(2)新建状态的线程在调用 start( )方法后,进入可运行状态。此时线程已经分配了必要资源,交给了系统调度。一旦线程实际占有了CPU,就进入了运行状态。(3)运行状态的线程如果调用了yield( )方法、sleep( )方法、join( )方法或wait( )方法,或者申请对象锁未果、有更高优先级线程进入调度等,都可进入阻塞状态。阻塞状态的线程在获取到足够的资源后,也可以转入到可运行状态。(4)当运行状态的线程正常执行完毕后,就进入了终止状态。