多个核心和java

时间:2015-03-07 14:48:47

标签: java multithreading

我刚刚读到“服务器如何”处理多个请求,最终得到了java多线程和多核cpu。

在计算机是单核的情况下,如果同时在java中有2个线程,那么jvm调度程序将负责为每个线程提供时间。因此,两个线程永远不会并行运行,而是利用理想的时间(例如,如果线程在某些资源上被阻塞)。

但这是java7中多核和fork / join框架的情况吗? 我的意思是我听说有多个内核我们实际上可以实现并行性。 所以,如果我有两个线程正在运行,两个核心cpu和每个线程被赋予一个单独的核心(虽然不能保证)然后它们实际上是并行的,因为jvm调度程序仍将导致时间交错?

如果这个问题很愚蠢,我很抱歉,但我真的不确定这个问题。请帮我理解!!

谢谢! Ouney

1 个答案:

答案 0 :(得分:1)

问题在于,仍然很难理解有多少线程,核心......实际可用。

我的个人建议:java专家时事通讯上有几篇文章深入探讨了这一主题。

例如这一个:http://www.javaspecialists.eu/archive/Issue135.html

或一个非常新的,可用处理器的数量":http://www.javaspecialists.eu/archive/Issue220.html