interview-go
interview-go copied to clipboard
语法题目一 第11题,
第11题,是能正常执行完毕的,推测现在golang 的 GC 动作是不需要所有正在运行 goroutine 都停止后进行。猜测。
Golang的垃圾收回机制在不同版本都在慢慢演进,最早的版本是串行回收,存在STW问题。详情可以看看这篇文档 :https://draveness.me/golang/docs/part3-runtime/ch07-memory/golang-garbage-collector/
我觉得是因为Go1.14之后实现了非协作式的抢占调度,实测Go1.13版本不会正常退出,Go1.14和1.18可以正常退出。