【发布时间】:2010-11-22 18:57:39
【问题描述】:
有three 线程模型用于线程调度实现,通常由操作系统内核完成。其中之一是混合 (M:N) 模型,其中一些N 应用程序线程映射到M 内核线程,以便它们可以使用最多M 处理器。这种模式有利有弊。优点之一是基于此模型的语言将引入语言级调度程序实现,负责管理和调度应用程序级线程。
- 我想知道是否有人知道任何努力或工作已经这样做了,以便语言或库可以利用它?
- 考虑到例如内核 2.6.23+ 使用称为 CFS 的算法进行调度这一事实,您认为这种混合模型是否是一种明智的投资方法?
【问题讨论】:
-
这个问题是在 2010 年提出的。现在我们可以说 golang 使用了 M:N thead model 。顺便说一句,我正在搜索 goroutine 如何实现和计算此页面的详细信息。
标签: multithreading language-design multicore