调度循环切换goroutine的条件

来源:1-4 Go 程序是怎么跑起来的

softtr

2021-06-20 08:55:44

在一个调度循环中,是怎么判断要执行goexit,结束本次goroutine的调用,我能够想到的就是协程阻塞的情况,请问老师还有什么情况下会结束本次调度?

写回答

2回答

Xargin

2021-06-20

第一课应该讲过,如果碰到可接管的阻塞,就进 gopark 挂起正在执行的 g,然后进下一次调度

具体的场景翻一下 ppt~

0
hargin
hp>翻了一下 1.13 的代码,10ms 的抢占应该一直是有的,所以上面这个说的有问题~

h021-06-21
共3条回复

反卷斗士

2021-06-20

 执行 goexit 是结束 goroutine  的运行了,这里说的是 gopark 吧​

1

Go高级工程师实战营

慕课网与 GoCN 社区官方联手打造,定义行业Go高级人才培养标准,4个月,快速晋升为P6+/D7级高级人才。

458 学习 · 266 问题

查看课程