CGo 呼叫的效能缺點
您觀察到的Cgo 函數與純Go 函數相比效能較慢,這與固有的開銷是一致的透過CGo呼叫C/C程式碼。為了縮小這種效能差距,最大限度地減少 CGo 呼叫的頻率至關重要。考慮將循環重新定位到 C 以避免重複的 CGo 呼叫。
C 程式碼的 Go 執行時期的執行緒化後果
此外,Go 執行時期的執行緒設定可能會影響C程式碼。以下是一些值得注意的面向:
CGo 的安全導向方法
由於這些因素,CGo 選擇了保守的方法,在具有傳統堆疊的專用線程。
Go 中的表現預期
與Python 等語言相反,在Python 中,用C 重寫表現關鍵部分是一種常見做法,等效的C和Go 程式碼之間的效能差距明顯縮小。因此,CGo 通常保留用於與現有庫的接口,可能受到小型 C 包裝函數的支持,以減少 CGo 呼叫頻率。
以上是為什麼 CGo 比 Pure Go 慢,如何提升效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!