例如 i5 7600k 有 4 个线程,但游戏可以有超过 4 个线程。有什么区别以及为什么它们具有相同的名称?
最佳答案
具有 4 个线程的 CPU(实际上是具有 4 核的 CPU,或者可能是具有超线程的 2 核 CPU)可以同时执行 4 个单独的线程。一个程序可以拥有比这更多的线程,但在任何给定时间只有 4 个线程可以执行 - 其他线程在等待 CPU 可用时将处于 sleep /等待状态。
当线程数量超过给定时间可以执行的数量时,CPU 如何“变得可用”供其他线程使用,这是操作系统调度程序的功能。操作系统调度程序定期(通常每隔几毫秒)轮换线程打开和关闭 CPU,以便每个想要执行的线程最终都能轮流使用 CPU。
还有更多内容,但希望这能涵盖您问题的要点。
关于multithreading - CPU线程和程序线程有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53327066/