是什么Thread.State
之后的一个线程Thread.yield()
?是不是一个Thread.State.WAITING
?谢谢。
不,线程仍会在RUNNABLE http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/java/lang/Thread.State.html#RUNNABLE状态。注意RUNNABLE
表示线程可以运行并且可能正在运行或正在等待轮到它。Thread.STATE http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/java/lang/Thread.State.html不区分当前正在执行的线程和准备运行的线程,它们都是RUNNABLE
.
一个线程只会进入WAITING http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/java/lang/Thread.State.html#WAITING说明当任一wait()
, join()
or LockSupport.park()
已被调用。
通过致电Thread.yield() http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/java/lang/Thread.html#yield%28%29方法当前正在运行的线程自愿放弃其 CPU 时间片。然后该线程从运行状态回到就绪状态。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)