当某个goroutine执行过久时,sysmon协程会对该goroutine进行标记,该goroutine每次在执行函数前检查该标记,若有标记就让出cpu,但是有一个漏洞,若永远不执行函数,那么该协程就永远不退出,比如只执行for{}
Go中的协作式抢占
最新推荐文章于 2022-12-08 17:31:20 发布
当某个goroutine执行过久时,sysmon协程会对该goroutine进行标记,该goroutine每次在执行函数前检查该标记,若有标记就让出cpu,但是有一个漏洞,若永远不执行函数,那么该协程就永远不退出,比如只执行for{}