2 月 19 日消息,Go 語言團隊現已正式發布 1.26 版本,本次更新主要改進泛型規則,同步提升運行性能。
據介紹,Go 1.26 放寬了 new 內建函數的使用限制。過去 new 的運算元只能是類型,如今則允許直接使用表達式作為運算元,以便在創建變量時同時指定初始值。這項改動對于使用指針表示可選字段的序列化數據結構較為實用,可更直觀地完成初始化操作。
泛型系統方面,新版本解除泛型類型不得在自身類型參數列表中自我引用的限制,使類型約束能夠表達更復雜的遞歸接口與數據結構需求,進一步增強泛型的表達能力。
性能改進方面,原本屬于實驗性質的 Green Tea 垃圾回收器在 1.26 中改為默認啟用。官方表示,在跨語言互通機制 cgo 上也有明顯優化,基礎額外開銷降低約 30%,有助于提升 Go 與 C 語言混合開發場景下的整體效率。同時,編譯器在更多情境下可將切片(slice)的底層存儲分配到棧上,從而減少堆分配次數,降低內存管理成本并改善運行性能。
工具鏈方面,官方對 go fix 命令進行了全面重構,改用 Go 分析框架為基礎實現,同時新增二十多個現代化自動修正器,可在不改變程序行為的前提下自動應用修正建議,幫助項目遷移至新語言特性或更新后的標準庫寫法。新版 go fix 還引入行內分析器(Inline Analyzer),支持通過 //go:fix inline 注解標記函數,并嘗試在調用點進行內聯處理,協助代碼逐步現代化。
標準庫方面,Go 1.26 新增 crypto / hpke、crypto / mlkem / mlkemtest 與 testing / cryptotest 等套件,擴展加密與測試能力。官方同時公布多項需顯式啟用的實驗功能,包括用于單指令多數據運算的 simd / archsimd 套件、支持安全擦除敏感臨時數據的 runtime / secret 套件等。Go 團隊表示,這些實驗特性有望在未來版本中轉為正式功能,開發者可提前試用并提供反饋。









