参考一下文章: {
对golang-gc较为全面的讲解-写于2017-04-28
golang-gc实践中的一些问题-写于2018-10-28
在golang-gc的情况下做性能调优-写于2015-03-02
golang-gc触发条件-go-version-go-1.13-darwin/amd64-写于2020-01-26
}
1. golang对gc对部分代码定义在golang源码中的proc.go文件中,变量forcegcperiod(line 4610)定义为2min,即2min内如果没有触发过gc,强制触发一次, 函数sysmon()触发golang的2min的gc清理, main()定义了主线程入口并重定向至程序main包的main函数, init() 定义了runtime包的init函数, gcTriggerKind类型定义了gc触发的类,golang在内存翻倍时会触发一次gc。