关于多线程,我有一个非常基本的问题。如果我们一次运行 10 个线程,那么在单个实例中只有一个线程将处于活动状态并且线程之间发生切换,或者多个线程可以在单个实例时间运行?
问问题
179 次
4 回答
0
这实际上取决于您的 CPU 和程序设计。如果您有一台四核 PC,则可以同时运行 8 个线程。
于 2013-09-01T14:38:28.700 回答
0
这取决于硬件。许多当前的处理器芯片包含一个以上的 CPU,并且一个 CPU 本身可能能够交错几个线程。大型服务器可能有几十个处理器芯片。在这样的系统上,所有 10 个线程都可以真正同时运行。
于 2013-09-01T14:39:31.163 回答
0
这取决于您的硬件和操作系统。如果您的内核少于线程,那么操作系统可能会交错这些线程,也就是说,每次其中一个执行例如 IO 操作或每次完成其时间片时,它都会切换到不同的线程。
此外,每个内核运行一个执行线程。这就是多核的用途。这通常与时间切片行为混合在一起。
于 2013-09-01T14:42:37.660 回答
0
一次只运行一个线程。处理器快速切换它们。例如,考虑一个带有拼写 chk 的文本编辑器。
u type - 那是一个线程 prog chks fr 错误 - 那是另一个线程
现在如果它们是多线程的,整个进程将在内存中获得空间,然后不同的线程将同时执行
于 2013-09-01T14:55:44.110 回答