为什么进程资源管理器显示数千个线程?

为什么进程资源管理器显示数千个线程?

在下面的截图中,你可以看到操作系统正在报告2925线程。

在我自己的程序中,我将每个核心的线程数设置为大约 1:1,这会导致整体处理速度最快。这是因为一旦开始上下文切换,性能就会开始下降。

如果执行的线程数达到数千个,那么这实际上不起作用,因为上下文切换的次数会使我使用的额外线程变得微不足道。

当我考虑线程时,操作系统报告的内容是否与我所想的不同?

在此处输入图片描述

在此处输入图片描述

答案1

一个进程可以拥有多个线程。操作系统负责调度线程和进程。

您看到的是系统上当前正在运行的所有线程的总和。此外,上下文切换在具有多核 CPU 的现代操作系统上是一项简单的操作。

答案2

Hefewe1zen 说得对;进程可能包含许多线程。但并非所有线程都必须同时工作

其中许多线程可能暂停,等待某种事件发生,在这种情况下 CPU 调度程序不会打扰它们。此外,CPU 调度程序足够智能,可以将大部分 CPU 时间分配给真正需要它的线程。因此,您不必担心所有这些线程会消耗计算机的性能。

相关内容