java 线程设置优先级 java 线程设置优先级 的本质是什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 线程的优先级代表该线程的重要程度,当有多个线程同时处于可执行状态(就绪状态)哄抢CPU控制权时优先级能够使得优先级高的线程有更大的机会获得 CPU 控制权,优先级低的线程机会要小 java优先级的本质就是基本没用 而且不推荐使用优先级控制线程执行流程 不要用优先级控制线程执行顺序。这个优先级是OS依赖的。WIN 只有 7个优先级,而SUN solaris的有32个(好像)JAVA 里面定义了10级所以不同系统上的JVM会把这10级映射到OS的等级上。WIN因为10大于7 所以有些等级被映射到同一级。而且WIN有独特的线程等级推送机制,就是说不常执行的线程会慢慢自动提升优先级,以获得CPU执行。(记忆中如此,可能有不确切的地方)唯一能保证的是MAX 等级 一定高于 MIN 等级。总之不要用就对了。 有更大的几率抢到cpu,然后执行。 good!我这样总结下:也就是java语言层级所设置的线程其实最终的实现还是由操作系统去完成的,不同的操作系统,执行的结果会有差异。对吧?那么操作系统是如何管理和执行java的线程的呢? 对,JAVA线程会映射成本地线程,由操作系统调度CPU分时,或在多CPU环境下,调度CPU给他们。除非JVM在绿色线程模式下,那么所有的线程将由JVM模拟。经有人测试,一般绿色模式下,JVM会开两个本地线程,然后所有的JAVA线程都被分配给这两个本地线程执行。Solaris 还有LWP 具体参考http://java.sun.com/docs/hotspot/threads/threads.html我个人认为,获得JVM最佳执行效率应该还是在Solaris上,而不是WIN。 线程的优先级越高 抢到的cpu 执行权的机率 会越大. 序列化与反序列化问题,为什么两个对象不相等 JAVA中NEW的使用 奇怪的题啊,怎么就是有错误呢?求解……! 【大二学生】 我想用栈存储字符,可是没有一种栈可以用? 求一个用xml和Java编写的日程提醒 谢谢 我想在JFram上显示一个数组,并对这个数组进行排序,请高手帮我改一下我写的程序。 Iterator是如何获得对象类型的 在java里面怎么读取text字段 ??请高手指点指点 关于扩充Applet的权限的问题,这个问题有人研究过么? 一个关于JAVABEAN的问题! 表格刷新 关于JAVA与数据库的问题。求指点
线程的优先级代表该线程的重要程度,
当有多个线程同时处于可执行状态(就绪状态)哄抢CPU控制权时
优先级能够使得优先级高的线程有更大的机会获得 CPU 控制权,优先级低的线程机会要小
WIN 只有 7个优先级,而SUN solaris的有32个(好像)JAVA 里面定义了10级
所以不同系统上的JVM会把这10级映射到OS的等级上。WIN因为10大于7 所以有些等级被映射到同一级。
而且WIN有独特的线程等级推送机制,
就是说不常执行的线程会慢慢自动提升优先级,以获得CPU执行。
(记忆中如此,可能有不确切的地方)唯一能保证的是MAX 等级 一定高于 MIN 等级。总之不要用就对了。
我这样总结下:也就是java语言层级所设置的线程其实最终的实现还是由操作系统去完成的,不同的操作系统,执行的结果会有差异。对吧?
那么操作系统是如何管理和执行java的线程的呢?
对,JAVA线程会映射成本地线程,由操作系统调度CPU分时,或在多CPU环境下,调度CPU给他们。除非JVM在绿色线程模式下,那么所有的线程将由JVM模拟。
经有人测试,一般绿色模式下,
JVM会开两个本地线程,然后所有的JAVA线程都被分配给这两个本地线程执行。Solaris 还有LWP 具体参考http://java.sun.com/docs/hotspot/threads/threads.html我个人认为,获得JVM最佳执行效率应该还是在Solaris上,而不是WIN。