Go教程技术文章
-
Golang · Go教程 | 3小时前 | 标准库 · Go教程 · 工具开发 · 错误定位 · 语法分析 · Go 1.27 go/scanner Scanner.End token.Pos 语法诊断
Go 1.27 为 go/scanner.Scanner 增加 End 方法,返回最近一次扫描 token 之后的位置。本文从诊断范围偏移的排查现场出发,说明 Scan 返回的起点、End 的末端、token.File.Offset 的字节区间如何配合,以及 EOF、Unicode 和未扫描状态下的边界。131 收藏 -
Go 1.27 的 go fix 新增 unsafefuncs modernizer,可把特定的 unsafe.Pointer 与 uintptr 算术改写为 unsafe.Add。本文用最小代码说明改写对象、版本门槛和人工复核边界。368 收藏 -
Go 1.27 为 net/url 增加 URL.Clone 和 Values.Clone。本文从请求模板复用场景出发,说明浅复制为何会共享可变查询参数、如何分别复制 URL 与 Values,以及 RawQuery、Query 和 Encode 之间的边界。490 收藏 -
Go 1.27 新增 crypto/mldsa 标准库包。本文用最小示例说明 ML-DSA-44 的密钥生成、签名、验签、Context 约束,以及 FIPS 140-3 模块下的可用性边界。106 收藏 -
Golang · Go教程 | 8小时前 | go并发 · pprof · 故障排查 · Go教程 · 版本升级 · GODEBUG runtime/pprof Go 1.27 goroutine 标签 tracebacklabels
Go 1.27 让带有 go 1.27 版本指令的模块在运行时回溯中默认显示 runtime/pprof goroutine 标签。本文从标签来源、go.mod 版本边界、tracebacklabels=0 回退和排查清单四个角度,说明什么时候保留诊断信息,什么时候关闭敏感标签。174 收藏 -
Go 1.27 的 HTTP/1 Response.Body 在 Close 时会有限度排空未读内容,以提高连接复用机会。本文用读取边界、Transport 配置和复查指标说明该行为能解决什么,哪些场景仍要显式限制响应体。311 收藏 -
Golang · Go教程 | 10小时前 | 标准库 · go · Go 1.27 · 并发测试 · HTTP 测试 · testing/synctest Go 1.27 httptest.NewTestServer Go 并发测试 内存网络
Go 1.27 为 httptest 增加 NewTestServer,默认使用内存网络;testing/synctest 则负责隔离并发测试中的 goroutine 与虚拟时间。本文用一个异步 HTTP Handler 示例说明两者的连接方式、等待边界和不适用场景。184 收藏 -
Golang · Go教程 | 12小时前 | 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 收藏 -
Golang · Go教程 | 13小时前 | 性能优化 · Go教程 · 数据库驱动 · Go1.27 · 数据库驱动 database/sql Go 1.27 Rows.Scan RowsColumnScanner
Go 1.27 为 database/sql/driver 新增 RowsColumnScanner,使驱动可通过 NextRow 和 ScanColumn 直接处理用户目标地址。本文拆解传统中转层、兼容写法与可靠基准方法。187 收藏 -
Go 1.27 的 go doc 可以直接查询 package@version。本文讲清它与当前工作区文档的差别、版本查询边界、私有模块配置和升级前核对方法。474 收藏 -
Golang · Go教程 | 15小时前 | Go教程 · Go工具链 · Go测试 · JSON解析 · 测试报告 Go 1.27 go test -json OutputType test2json
Go 1.27 为 go test -json 的 output 事件增加可选 OutputType。本文用兼容解析器讲清 frame、error、error-continue 与空值的处理方式,以及多行错误如何合并而不丢失原始输出。266 收藏 -
Go 1.27 的 encoding/json/v1 已由 v2 实现支撑。本文解释如何用 DefaultOptionsV1 建立兼容基线,再逐项切换字段匹配、omitempty、nil 容器和重复字段等语义,降低一次性迁移风险。172 收藏 -
Go 1.27 将 simd 与架构相关的 archsimd 作为实验性标准库能力带入发布版,但它不是所有业务代码的通用加速开关。本文从数据布局、目标架构和实验性 API 三个边界判断适用场景,并给出接入前的检查清单。332 收藏 -
Go 1.27 为 testing/synctest 增加 Sleep,把时间休眠与同步等待放到同一个测试语义里。本文拆开 Sleep、Wait、协作组和虚拟时间的边界,帮助你判断测试为何仍会卡住或提前通过。261 收藏 -
Go 1.27 的运行时针对小对象分配做了专项优化。本文围绕官方给出的 80B 阈值,说明它影响的对象范围、适合怎样判断收益,以及为什么不能把版本说明直接当成业务性能承诺。103 收藏