Java Thread优先级如何转换为OS线程优先级?

前端之家收集整理的这篇文章主要介绍了Java Thread优先级如何转换为OS线程优先级?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Java API线程优先级(1-10)如何被转换为操作系统级别的优先级,因为大多数操作系统不具有与之匹配的线程优先级(以数字表示).

所以记住,如果两个或多个具有不同优先级的线程最终在OS级别获得相同的优先级,那么会有一种情况.

请澄清一点,如果我有一些修正我的理解.

解决方法

事实上,一些优先级别可以映射到相同的“本机”优先级.这是列表(基于OpenJDK 6中的Hotspot代码):

的Solaris

> 1⇒0@H_403_13@> 2⇒32@H_403_13@> 3⇒64@H_403_13@> 4⇒96@H_403_13@> 5 – 10⇒127

值得注意的是,在Solaris上,您不能将线程优先级提高到正常值以下,只能将其优先级更低:5的优先级值与任何较高的值相同.

Linux

> 1 – 10⇒4 – -5(不错的值)

值得注意的是,在Linux上,Java中不同的线程优先级确实映射到本机级别的不同优先级值.

视窗

> 1 – 2⇒THREAD_PRIORITY_LOWEST> 3 – 4⇒THREAD_PRIORITY_BELOW_NORMAL> 5 – 6⇒THREAD_PRIORITY_NORMAL> 7 – 8⇒THREAD_PRIORITY_ABOVE_NORMAL> 9 – 10⇒THREAD_PRIORITY_HIGHEST

猜你在找的Java相关文章