eddycjy / blog

煎鱼的博客,有点忙,传送门:https://eddycjy.com
3.05k stars 429 forks source link

posts/go/go-tips-goroutineloop/ #146

Open utterances-bot opened 3 years ago

utterances-bot commented 3 years ago

Go 面试官:单核 CPU,开两个 Goroutine,其中一个死循环,会怎么样?

https://eddycjy.com/posts/go/go-tips-goroutineloop/

XiaoyeFang commented 3 years ago

煎鱼煎鱼

这三者交互实际来源于 Go 的 M: N 调度模型。也就是 M 必须与 P 进行绑定,然后不断地在 M 上循环寻找可运行的 G 来执行相应的任务。

看了下源码M中是没有G的队列的,所以应该是M绑定P之后在P队列中获取G运行

还是说M绑定P之后,P就属于M的一部分了

codecoron commented 1 month ago

抢占运行时间过长的 G。 多长时间算长???