线程概念在Java中

时间:2010-02-24 18:23:20

标签: java multithreading core

我有疑问

有10个不同的线程处于可运行状态。每个都具有优先级1到10. CPU如何调度或执行这些线程?

谢谢, 拉维

4 个答案:

答案 0 :(得分:3)

此地点何时取代谷歌?

谷歌搜索Java线程调度,第一个结果:

http://lass.cs.umass.edu/~shenoy/courses/fall01/labs/talab2.html

答案 1 :(得分:1)

主流Java实现使用“本机线程”,这意味着线程调度是通过操作系统完成的。 Java线程优先级simply map to OS-specific values。但是,您应该阅读您的操作系统文档,以确定这些级别的含义。 : - )

答案 2 :(得分:0)

操作系统有一个线程调度程序,它将(使用算法)根据优先级和一些其他因素来决定,接下来将运行哪个线程。如果你有一个多核系统,那么每个CPU都可以为它的帐户提供一个线程。

还有一个事实是一个线程获得了一个时间槽,然后被另一个线程切换出来并且必须再次轮到它。

但线程调度是一个操作系统功能。

我希望能为您提供问题的答案。

答案 3 :(得分:0)

值得注意的是,除非您是管理员,否则Windows会忽略提升的优先级,除非您是root用户,否则所有优先级都会被忽略。

通常,使用线程优先级并不是很有用。