有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

用多核处理器实现Java多线程

我有一个关于Java中使用多核处理器的多线程的问题。正如我所知,当有单核处理器时,多线程工作,因为每个线程都会从cpu运行时间中获得一个片段,现在我们有了多核处理器,正如我所假设的,JVM也会被更新以获得这一优势,不是吗?或者不是,这就是为什么在Java7中引入fork/join框架进行多处理的原因?
非常感谢


共 (1) 个答案

  1. # 1 楼答案

    是的,当有一个单核处理器时,每个线程将获得一部分CPU运行时间

    是的,当有多个核时,它们将分布在它们之间。但是,如果线程多于内核(包括计算机中运行的其他进程/程序的线程),那么它们也只能获得CPU的一部分

    如果您只有一个线程,并且希望生成更多线程,以便每个线程都可以执行部分工作,那么稍后您将不得不加入它们的结果。进行这种分叉(从一个线程到多个线程的数据)和连接(从多个线程到一个线程的数据)比一开始看起来更复杂,这就是为什么在Java 7中引入分叉/连接的原因