在 Go 中停用函數內聯
在某些情況下,可能需要指示 Go 編譯器避免內嵌特定函數。內建內嵌優化會影響程式碼效能和可見性,導致執行速度變慢或難以偵錯複雜的呼叫序列。
使用 //go:noinline Pragma
要停用特定函數的內聯,可以使用 //go:noinline 編譯指示。只需將指令放在所需的函數宣告之前:
//go:noinline func isPrime(p int) bool { // ... }
停用所有內聯
如果您希望停用程式中所有函數的內聯,您可以使用編譯期間的-gcflags=-l 標誌。此選項設定Go 編譯器的標誌以停用內嵌:
go build -gcflags=-l primes.go
附加說明
以上是如何停用 Go 中的函數內聯?的詳細內容。更多資訊請關注PHP中文網其他相關文章!