这个问题是关于Java中的多线程的。
多线程是为了最大限度地利用cpu。根据我所读到的,一次只能执行一个线程。我相信这对于单处理器系统来说是正确的。可以同时执行的线程数取决于什么因素??
例如,如果我使用4核处理器,那么可以并发运行多少个线程??
提前谢谢。
发布于 2015-04-22 18:03:05
对于4核处理器,4个线程,或者8个线程(如果处理器中有HyperThreading )。
HyperThreading允许没有以100%的容量运行的内核在单个内核上运行2个线程。
发布于 2015-04-22 18:02:18
线程不受可用处理器/核心数量的限制。操作系统调度程序可以在单个CPU上的任意数量的线程之间来回切换。这就是抢占式多任务的含义。
处理器通常一次只能运行一个线程。当您有多个进程在运行时,您的处理器会非常快速地在它们之间切换,从而为每个进程分配一部分处理器时间。这给人一种并发的错觉,但实际上一切都是串行发生的。
因此,如果你有4核处理器,实际上4个线程可以并行运行。
https://stackoverflow.com/questions/29794042
复制相似问题