Golang源碼分析筆記:第一章 main 函數之前

1.go 的彙編部分:彙編引導、參數整理、核數確定、運行環境初始化(runtime.args、runtime.osinit)

2.運行環境初始化包括:環境變量設置、內存分配器初始化、調度器初始化、垃圾回收器初始化(runtime.schedinit)(最大攜程數10000,執行棧64位1G,32位250M)

3.執行函數初始化:設置執行棧最大數量、啓動後臺併發調度、啓動後臺垃圾回收、執行runtime包內init()、執行用戶包內init()、執行用戶main_main() (runtime.main)

4.所有 init 函數都在同一個goroutine內執。

所有 init 函數結束後纔會執行main.main函數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章