Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading CPU线程和程序线程之间有什么区别_Multithreading_Cpu - Fatal编程技术网

Multithreading CPU线程和程序线程之间有什么区别

Multithreading CPU线程和程序线程之间有什么区别,multithreading,cpu,Multithreading,Cpu,例如i5 7600k有4个线程,但游戏可以有4个以上的线程。区别是什么?为什么它们有相同的名称?一个有4个线程的CPU实际上是一个有4个内核的CPU,或者可能是一个有超线程的2个内核的CPU可以同时执行4个独立的线程。一个程序可以有更多的线程,但在任何给定的时间只有4个线程可以执行——其他线程在等待CPU可用时将处于休眠/等待状态 至于CPU在给定时间内执行的线程数超过它所能执行的线程数时,CPU如何可用于其他线程,这是操作系统调度程序的一个功能。操作系统调度程序周期性地打开和关闭CPU上的线程

例如i5 7600k有4个线程,但游戏可以有4个以上的线程。区别是什么?为什么它们有相同的名称?

一个有4个线程的CPU实际上是一个有4个内核的CPU,或者可能是一个有超线程的2个内核的CPU可以同时执行4个独立的线程。一个程序可以有更多的线程,但在任何给定的时间只有4个线程可以执行——其他线程在等待CPU可用时将处于休眠/等待状态

至于CPU在给定时间内执行的线程数超过它所能执行的线程数时,CPU如何可用于其他线程,这是操作系统调度程序的一个功能。操作系统调度程序周期性地打开和关闭CPU上的线程(通常每几毫秒一次),以便希望执行的每个线程最终都会打开CPU


还有比这更多的内容,但希望这涵盖了您问题的要点。

谢谢!我想我现在明白了。