下列方法被调用后,一定使调用线程改变当前状态的是( )。
A.notify()
B.yield()
C.sleep()
D.isAlive()
参考答案:C
解析: 线程调用sleep函数后,使当前线程进入停滞状态。yield函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield函数的线程有可能被马上执行,也有可能不会马上执行。notify函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。所以只有sleep一定会改变线程状态。
下列方法被调用后,一定使调用线程改变当前状态的是( )。
A.notify()
B.yield()
C.sleep()
D.isAlive()
参考答案:C
解析: 线程调用sleep函数后,使当前线程进入停滞状态。yield函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield函数的线程有可能被马上执行,也有可能不会马上执行。notify函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。所以只有sleep一定会改变线程状态。