与常规OS线程相比,goroutine是否具有更少的运行时间(CPU周期)?

时间:2019-07-09 15:54:22

标签: multithreading go scheduler scheduling goroutine

完整地重写了我的问题,希望可以使其更清楚。

我有2个程序,一个用Java编写,一个用Go编写,同时在具有4个内核的Windows机器上运行。

每个程序同时运行8个无限循环。在Java中,这将在8个线程中完成,而在Go中将在8个goroutines中完成。

如果两个程序同时运行,那么Java程序不会首先完成,因为它将获得更多的CPU时间,因为只有线程分配了CPU时间,而Java有8个线程,而Go的是4个?

为简单起见,我们假设计算机上没有运行其他任何东西(包括内置Java和Go线程,例如GC等),并且所有Java线程都设置为与GO线程相同的优先级。

0 个答案:

没有答案
相关问题