面试真题

Go · 中等 · 网易

携程在哪些情况下会被剥离 M?

中等 Go 🎤 网易
参考答案
结论:Go中协程(G)不直接绑M,但G阻塞会导致P与M剥离。情况:1. G执行阻塞系统调用(文件读写、sleep)时M陷内核,P解绑M转去其他M跑新G;2. G通道阻塞或锁等待,G离运行队列,M跑其他G;3. 抢占:G运行超10ms或GC安全点被剥离交还P;4. 网络I/O时G挂netpoll,M不阻塞。即“剥离M”实为P脱离M,G随P迁移至新M继续。
题目整理自公开面经,答案由校招宝自研生成,仅供参考