问题:[选择题]
A.只有终止状态
B.只有阻塞状态和终止状态
C.可运行状态,阻塞状态,终止状态
D.其他所有状态
● 参考解析
运行状态是线程占有CPU并实际运行的状态。此时线程状态的变迁有3种情况:如果线程正常执行结束或应用程序停止运行时,线程将进入终止状态;如果当前线程执行了yield(),或者当前线程因调度策略从而导致当前线程进入可运行状态;如果发生下面几种情况时,线程就进入了阻塞状态:线程调用了sleep()方法、join()方法或wait()方法时,线程进入阻塞状态,线程请求对象锁未获得时,进入阻塞状态,线程有输入输出操作进入阻塞状态。