在Java中,有没有办法强制JVM实例在单个CPU / Core上运行。
此外,还有一种方法可以让给定的线程找出它运行的CPU吗?
答案 0 :(得分:5)
这不是在JVM / Java级别控制,而是在OS /平台级别控制。例如,在Windows中,您可以转到任务管理器中的进程选项卡,并通过在右键单击菜单中选择适当的选项为大多数进程设置 Affinity 。通过这种方式,您基本上可以控制允许进程使用的CPU /核心。
答案 1 :(得分:2)
有没有办法强制JVM在单个处理器或Core上运行。
是。有专门针对特定操作系统的工具。
在Java中,有没有办法强制JVM实例在单个CPU / Core上运行。
没有
此外,还有一种方法可以让给定的线程找出它运行的CPU吗?
没有。 (一个解决这个问题的线程意味着你在Java中这样做......)
这些答案应该是合格的,说不可能在纯Java 中做这些事情。您可能能够使用JNI调用某些特定于操作系统的本机API来执行这些操作。但是从命令提示符或某些适当的OS管理GUI执行任务更简单,更清晰。