Go语言技术文章
-
Golang · Go问答 | 1天前 | Go问答 · Go 1.27 · 类型系统 · go/types · Go 1.27 类型缓存 go/types.Hasher HasherIgnoreTags Identical
Go 1.27 为 go/types 增加 Hasher 与 HasherIgnoreTags,用于为 Type 提供与 Identical 或 IdenticalIgnoreTags 一致的哈希关系。本文从类型分析缓存键冲突场景出发,说明 Hash、Equal、maphash.Hash 和结构体标签的边界。383 收藏 -
Golang · Go教程 | 2天前 | Go教程 · go fix · 代码迁移 · Go 1.27 · go fix modernizer Go 1.27 atomictypes embedlit slicesbackward unsafefuncs
Go 1.27 给 go fix 增加 atomictypes、embedlit、slicesbackward 和 unsafefuncs 四类 modernizer。本文从真实升级场景出发,说明如何按代码边界选择工具、审查改动并保留可回退的迁移证据。377 收藏 -
Go 1.27 为 compile、link、asm、cgo、cover、pack 增加响应文件支持。本文用一个小型 CI 参数契约说明 @file 的解析范围、引号与反斜杠换行规则,以及升级后的回滚验收方法。377 收藏 -
Golang · Go教程 | 23小时前 | HTTP服务 · Go教程 · 接口设计 · net/http Go 1.27 MaxHeaderValueCount MaxHeaderBytes HTTP安全
Go 1.27 为 net/http.Server 增加 MaxHeaderValueCount。本文说明它与 MaxHeaderBytes 的边界、同名请求头的计数方式,以及上线时如何组合配置并平滑收紧。376 收藏 -
Go 官方仓库的新问题显示,在 testing/synctest 的 bubble 内调用 t.Skip,内层会退出,但外层测试仍可能显示 PASS。文章解释两个 testing.T 的状态边界,并给出问题确认前更稳妥的跳过写法。373 收藏 -
Go 1.27 将 uuid 纳入标准库后,生成、解析和数据库持久化该怎么分层?本文用一个订单请求标识场景,拆开 uuid API 的职责、字符串边界、二进制存储取舍与迁移检查点。372 收藏 -
Go 1.27 的 go fix 新增 unsafefuncs modernizer,可把特定的 unsafe.Pointer 与 uintptr 算术改写为 unsafe.Add。本文用最小代码说明改写对象、版本门槛和人工复核边界。368 收藏 -
Go 1.27 将 runtime/pprof 的 goroutineleak profile 作为正式能力,但它依赖垃圾回收可达性判断,并不能覆盖所有永久阻塞。本文用全局 channel 场景拆解它能发现什么、为什么会漏报,以及工程上如何补查。351 收藏 -
Go 1.27 的 go test 默认启用 stdversion vet,会按 go.mod 的 go 指令和文件构建条件检查标准库符号是否超出兼容版本。本文用 slices.Values 说明告警来源、修复选择和 CI 验收边界。348 收藏 -
sync.Map.Range 适合遍历某个时刻可见的键值,但不能把回调结果当成并发集合的稳定快照。本文拆开 Store、Delete 与 Range 同时发生时的可见性边界,并给出需要一致结果时的替代方案。344 收藏 -
Golang · Go问答 | 2天前 | 并发 · pprof · 故障排查 · Go问答 · Go 1.27 · Go goroutine泄漏 net/http/pprof goroutineleak runtime/pprof
Go 1.27 将 goroutineleak profile 作为正式能力,但空结果不等于没有泄漏。本文从 runtime/pprof 的可达性判定出发,核对阻塞原语、全局对象盲区与 net/http/pprof 入口。340 收藏 -
Go 1.27 将 simd 与架构相关的 archsimd 作为实验性标准库能力带入发布版,但它不是所有业务代码的通用加速开关。本文从数据布局、目标架构和实验性 API 三个边界判断适用场景,并给出接入前的检查清单。332 收藏 -
Go 1.27 移除了 go 命令对 bzr 的直接拉取支持。本文讲清代理与直连差异、两条迁移路线,以及干净缓存和 CI 的验收方法。331 收藏 -
Golang · Go教程 | 1天前 | go · TLS · Go 1.27 · QUIC · crypto/tls Go 1.27 QUICConfig ClientHelloInfoConn QUIC握手
Go 1.27 为 tls.QUICConfig 增加 ClientHelloInfoConn,用于指定 ClientHelloInfo.Conn 暴露的 net.Conn。本文从 QUIC 证书选择和配置回调场景讲清赋值位置、可读取的连接元数据、禁止读写的边界与兼容做法。320 收藏 -
Go 1.27 会识别已经移除的 GODEBUG 设置,但只接受移除前的最终默认值。文章比较 go.mod 与源码配置位置,并用 asynctimerchan 说明保留和报错边界。318 收藏