线程的理解的
在java技术中,线程通常是抢占式的而不需要时间片分配进程(分配给每个线程相等的cpu时间的进程)。一个经常犯的错误是认为“抢占”就是“分配时间片”。
在Solaris平台上的运行环境中,相同优先级的线程不能相互抢占对方的cpu时间。但是,在使用时间片的windows平台运行环境中,可以抢占相同甚至更高优先级的线程的cpu时间。抢占并不是绝对的,可是大多数的JVM的实现结果在行为上表现出了严格的抢占。纵观JVM的实现,并没有绝对的抢占或是时间片,而是依赖于编码者对wait和sleep这两个方法的使用。
抢占式调度模型就是许多线程属于可以运行状态(等待状态),但实际上只有一个线程在运行。该线程一直运行到它终止进入可运行状态(等待状态)或是另一个具有更高优先级的线程变成可运行状态。在后一种情况下,底优先级的线程被高优先级的线程抢占,高优先级的线程获得运行的机会。
线程可以因为各种各样的原因终止并进入可运行状态(因为堵塞)。例如,线程的代码可以在适当时候执行eep()方法,故意让线程中止;线程可能为了访问资源而不得不等待直到该资源可用为止。
所有可运行的线程根据优先级保持在不同的池中。一旦被堵塞的线程进入可运行状态,它将会被放回适当的可运行池中。非空最高优先级的池中的线程将获得cpu时间。
《爱情自有天意》84集……长剧攻势让观众直喊吃不消 最后一个句子是不精确的,因为:
(1)在大多数的JVM实现中,虽然不能保证说优先级有任何意义,但优先级看起来象是用抢占方式工作。
(2)微软windows的评价影响线程的行为,以至尽管一个处于可运行状态的优先级为5的java线程正在等待cpu时间,但是一个优先级为4的java线程却可能正在运行。
实际上,许多JVM用队列来实现池,但没有保证行为。
查看本文来源
孩子不爱吃饭怎么办忻州哪医院治疗白癜风好
漯河治疗白癜风较好的医院
- 下一页:线程控制动画呢
- 上一页:组件新产品为以太网发展铺下坚实道
- 06月21日体育稀奇外来客误入捕鼠笼原来是只狗獾位置
- 06月21日体育科来特猫图片科来特猫有哪些体型特征位置
- 06月21日体育秋田犬为什么在地上刨坑位置
- 06月21日体育研究称看猫狗照能提高工作效率位置
- 06月21日体育科学怪狗砸锅位置
- 06月20日体育可卡犬怎么养上班族照顾可卡犬的小秘籍位置
- 06月20日体育可卡吃什么狗粮好选狗粮前先确定其年纪位置
- 06月20日体育可以给金毛犬吃瘦肉位置
- 06月20日体育可以带宠物狗坐火车吗位置
- 06月20日体育可以和虾一起混养的海水鱼位置
- 06月20日体育可卡犬从小到大应该如何喂养知识位置
- 06月20日体育可卡犬不爱吃东西拉便便带血色是什么病位置