最佳化 Go 編譯:探索速度和大小增強的標誌
編譯 Go 程式通常涉及執行「go build myprogram.go」指令。這個過程將程式碼編譯成可執行文件,但它是否允許包含最佳化標誌?
官方Go 編譯器中的最佳化標誌
與採用的方法相反gccgo,其中使用「-O2」和「-O0」標誌,官方Go編譯器不提供明確最佳化Go編譯器最佳化
儘管沒有使用者控制的標誌,Go 編譯器還是會自動套用各種最佳化。這些最佳化記錄在Go wiki 上,包括:停用最佳化偵錯
雖然編譯器在內部處理最佳化,但可以使用「gcflags」命令列標誌停用它們以進行偵錯。此標誌啟用特定的編譯器設置,包括:用法範例
要停用Go gc 編譯器中的這兩種最佳化,請使用下列指令:go build -gcflags '-N -l' myprogram.go
結論
當Go編譯器不公開使用者可控的最佳化標誌,它在內部應用各種最佳化。但是,它提供了使用“gcflags”標誌禁用優化的選項,允許開發人員在沒有編譯器強加的增強的情況下調試程式碼。以上是如何最佳化 Go 編譯速度和大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!