首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java中线程状态有关问题

2012-09-17 
java中线程状态问题?java中线程有六种状态:new、runnable、 blocked、waiting、timed waiting、terminated对于r

java中线程状态问题?
java中线程有六种状态:
  new、runnable、 blocked、waiting、timed waiting、terminated

对于runnable状态:《core java》中说是可能正在运行也可能没有运行。
我在想:如果没有运行,那就肯定处于 阻塞或者等待状态。runnable怎么会包含两种情况?

[解决办法]
我的理解 runnable是种就绪状态,就等操作系统给它分配时间片来执行了。这并不同于阻塞或者等待

[解决办法]
1L说对了一半
javadoc里有说明,runnable就是处于运行中的线程状态,要知道线程是CPU随机分配时间执行的,所以即使是运行中的线程,也有可能CPU被系统收回而暂时没有执行,此时,并不会因为CPU被收回而改变线程的状态,也就是说即使这个时候线程停止没有被执行(没有分配到CPU),也还是runnable状态,所以core java里说的是这个意思
[解决办法]
可以参考一下这张图。
http://blog.csdn.net/jiafu1115/article/details/6804386

热点排行