用途:这是一份 Go 1.26 新特性、API 变更与迁移说明的速查资料,适用于编写以 Go 1.26 为目标的 Go 代码,或从更早版本升级时参考。
主要能力:语言层面,new() 可直接接受表达式(如 new(42)),支持自引用泛型类型。运行时默认启用 Green Tea GC,官方称可降低 10-40% GC 开销,新 amd64 CPU 上约提升 10%,可用 GOEXPERIMENT=nogreenteagc 关闭;64 位平台堆基址随机化,可用 GOEXPERIMENT=norandomizedheapbase64 关闭;cgo 开销约降低 30%;goroutine 泄漏分析为实验特性,需 GOEXPERIMENT=goroutineleakprofile,对应 runtime/pprof 的 goroutineleak 类型及 /debug/pprof/goroutineleak 端点。工具方面,go fix 重做并引入 modernizers 与 //go:fix inline;go mod init 默认生成 go 1.(N-1).0;pprof Web UI 的 -http 默认显示火焰图;cmd/doc 已移除(改用 go doc)。标准库新增 crypto/hpke;实验性 simd/archsimd(仅 amd64,需 GOEXPERIMENT=simd)与 runtime/secret(需 GOEXPERIMENT=runtimesecret,限 amd64/arm64 Linux)。另有多处库变更,如 errors.AsType 泛型、io.ReadAll 更快、reflect 迭代器、slog.NewMultiHandler、bytes.Peek、net 的类型化 Dial、net/http 与 net/url 行为调整、testing.ArtifactDir、fmt.Errorf 分配更少、image/jpeg 重写。加密方面默认启用后量子 TLS,多个随机数参数改为始终使用安全随机;并弃用部分 RSA PKCS#1 v1.5、ECDSA big.Int 字段、httputil.ReverseProxy.Director。
使用方式与限制:部分特性需通过 GOEXPERIMENT 或 GODEBUG 开关启用或关闭;个别行为变更会破坏兼容(如 image/jpeg 输出可能逐位不同、ServeMux 尾斜杠重定向改为 307、net/url 拒绝 http://::1/)。构建 Go 1.26 需要 Go 1.24.6+。资料未提供安装命令、价格或平台支持细节。