java - JVM 上具有多个线程的进程是否会比具有一个线程的进程拥有更多的 cpu 时间?

标签 java multithreading jvm

基于Linux上的问题,这是在 2.6.38 之前占用 CPU 的有效方法。 JVM 怎么样?假设我们已经实现了无锁算法,所有这些线程都是完全独立的。更多的线程会帮助我们从系统中获得更多的CPU时间吗?

最佳答案

简短的回答是肯定的。更多进程也会导致获得更多 CPU 时间。

现代操作系统上典型调度程序的默认假设是,任何需要 CPU 时间的事物都旨在使用 CPU 来取得有用的前进进度,并且通常来说,取得尽可能多的前进进度比“公平的”。如果您有一些对您的特定工作负载很重要的公平概念,您可以在大多数操作系统中专门配置它。

关于java - JVM 上具有多个线程的进程是否会比具有一个线程的进程拥有更多的 cpu 时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18907290/

相关文章:

java - 如何将非 Liferay Web 应用程序部署到与 Liferay 捆绑的 tomcat

java - 使用 EJBContext getContextData - 这安全吗?

multithreading - D 程序中的并发

c# - CPU 使用率过高

jvm - 为什么 JVM 在启动时随着时间的推移执行相同的程序会更快?

java - 有maven jigsaw jlink插件吗?

java - 在 fragment 布局android中获取 fragment

c++ - 高效循环多线程

java - 使用 Swing 时 Eden 空间使用量不断增加

java - 由于 Java 的跨平台能力,Java 中的开销是否比 C# 更多?