当前位置: 首页 > 面试题库 >

强制多个线程在可用时使用多个CPU

岳承悦
2023-03-14
问题内容

我正在编写一个使用大量CPU的Java程序,因为它的工作性质。但是,许多程序可以并行运行,并且我使程序成为多线程的。当我运行它时,似乎只使用一个CPU直到需要更多的CPU,然后再使用另一个CPU-
我可以用Java强制其他操作在不同的内核/ CPU上运行吗?


问题答案:

当我运行它时,它似乎只使用一个CPU直到需要更多的CPU,然后再使用另一个CPU-我可以用Java强制其他操作以在不同的内核/
CPU上运行不同的线程吗?

我将问题的这一部分解释为意味着您已经解决了使应用程序具有多html" target="_blank">线程功能的问题。尽管如此,它并不会立即开始使用多个内核。

“是否有任何强制方式…”的答案不是(AFAIK)。您的JVM和/或主机OS决定要使用多少个“本机”线程,以及如何将这些线程映射到物理处理器。您确实有一些调整选项。例如,我发现此页面讨论如何在Solaris上调整Java线程。并且此页面讨论了可能减慢多线程应用程序运行速度的其他因素。



 类似资料:
  • 问题内容: 我有一个多线程Java应用程序,该应用程序会将有关它收到的消息的信息输出到控制台以进行调试。每次应用程序收到消息时,它将在消息上调用。 我遇到的问题是,如果应用程序被消息淹没,则会打印错误信息(例如旧缓冲区信息)。这使我想知道是否存在线程问题,即多个线程一次调用该函数,而没有正确刷新缓冲区。 在我的主程序(线程)中,我有以下效果: 在我的线程中,我有以下效果: 是否有一种简单的方法可以

  • 问题内容: 假设我们的应用程序只有一个线程。然后我们正在使用,这是什么问题? 我的意思是,如果可以通过同步处理多个线程,那么使用单线程有什么问题? 为什么要改用? 问题答案: 是线程安全的,这意味着它们具有同步的方法来控制访问,因此一次只有一个线程可以访问StringBuffer对象的同步代码。因此,在多个线程可能试图同时访问同一StringBuffer对象的多线程环境中,StringBuffer

  • 问题内容: 我正在尝试使用多个线程在Java中编写一个大文件。 我已经尝试了Java 和类。 实际上,要写入的内容是使用和写入的整个表(Postgres)。文件中的每一行都是表中的一个元组,我一次要写100行。 编写方法: 单个待写入文件由附加模式下的多个线程打开。此后,每个线程都尝试写入文件文件。 以下是我面临的问题: 有时,文件的内容将被覆盖,即:一行仍然不完整,而下一行从那里开始。我的假设是

  • 我有多个线程,它们都从一个对象运行。我希望“主线程”单独运行,直到某一点,然后它等待,所有其他线程一起运行,然后主线程唤醒,等等。。。。。我无法同步线程。我要么得到一个非法的监视器状态异常,要么它卡在一个“等待”循环中,该循环应该接收一个永远不会到达的“通知”。 更具体地说,我有一个带有数组的对象。阵列中的每个单元都有一个线程,该线程检查相邻单元,然后使用该信息更改其单元。为了有序地进行更改,我希

  • 本文向大家介绍C#(asp.net)多线程用法示例(可用于同时处理多个任务),包括了C#(asp.net)多线程用法示例(可用于同时处理多个任务)的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#(asp.net)多线程用法。分享给大家供大家参考,具体如下: 更多关于C#相关内容感兴趣的读者可查看本站专题:《C#程序设计之线程使用技巧总结》、《C#常见控件用法教程》、《WinForm控件

  • 我有一个项目,我在几个不同的线程中观察几个节点。现在,我注意到,当我观察一个节点时,它发生了变化,引发了一个事件,某个节点上的观察(例如称为a)会阻止所有其他观察者。因此,只有在A上的观察者完成后,另一个观察者才会返回以观察节点的变化。也就是说,如果一个节点在其观察程序被阻止时发生了更改(例如称为B),则只有在a上的观察程序完成后,节点B上的观察程序才会引发该事件。 此问题会导致应用程序变慢。 所