java - 多线程和处理器的能力

标签 java multithreading processor capacity

我不明白为什么我有 4 个线程在运行,但只使用了 50% 的处理器容量:实际上,这意味着只使用了 2/4 个处理器。

enter image description here

编辑:我认为这是由于限制造成的:我的错误是 5 个线程同时运行,因此默认情况下系统将 %CPU 限制为 2 个核心(50%)。 我要检查 4 个线程

最佳答案

这很大程度上取决于您的线程正在做什么

如果他们所做的工作主要集中在 IO 操作上,那么您的 CPU 可以运行许多这样的线程 - 而不会产生任何显着的 CPU 负载。

换句话说:您的线程很可能没有执行 CPU 密集型工作。

但我们无法确定,因为您没有给出有关您的应用程序性质的任何提示。

关于java - 多线程和处理器的能力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45908143/

相关文章:

java - 如果一个数组被分配给一个对象引用,那么对象引用指向什么?

java - 不使用按钮展开 Bottom Sheet

java - Class.getSimpleName() 与在 Java 中硬编码类名?

multithreading - macOS 10.13 高塞拉利昂 : [NSGraphicsContext flushGraphics] on background thread has no effect

c - time() 在调试(JTAG)时可以,在片上运行时则不行。如何使用嵌入式进程计时?

JSP 文件无法编译 - JSPTranslator.CouldNotLoadClass

C# Application Restart 不调用程序 Main()

c - 如何提高用 C 编写的阻塞队列的性能?

android - 处理器计数可靠性

python - 计算机速度和 Python 运行时