进程获得由OS进程调度程序管理的CPU时间。 由于线程在单个进程中并行运行,这是否意味着进程的CPU时间在线程之间进一步分配(切片)? 或者,调度程序可以直接在绕过父进程的线程之间分配CPU时间吗?
答案 0 :(得分:4)
我怀疑答案因操作系统而异。在Windows上,该过程不仅被绕过,而且被完全忽略 - 所有调度程序处理的都是线程。进程仅与所有非内核线程必须属于某个进程的程度相关,并且每个进程必须至少包含一个线程。
答案 1 :(得分:2)
线程由操作系统运行/调度,因此它们获得自己的CPU时间。进程CPU时间只是进程中所有线程的CPU时间的总和。
如果您希望您的进程自行安排任务,则应使用光纤(Windows)。这些是一种线程,但它们不是由OS安排的。该过程应该处理纤维本身的安排。
答案 2 :(得分:0)