Go语言技术文章
-
Go 1.27 的 go fix 增加 unsafefuncs modernizer,可把部分 unsafe.Pointer 与 uintptr 指针运算改写为 unsafe.Add。本文用代码对比说明迁移范围,并给出预览、复核和提交前检查清单。257 收藏 -
Go 1.25 的 runtime/trace.FlightRecorder 适合为长时间运行服务保留最近一段执行追踪。本文说明 MinAge、MaxBytes、WriteTo 和单次快照触发之间的关系。257 收藏 -
Go 的 encoding/csv.Reader 默认会把首条记录的字段数作为后续基准,遇到不等长行时返回 ErrFieldCount。本文用一个小型 CSV 清洗工具说明 FieldsPerRecord 的三种配置,并给出严格校验与宽松接收的处理方式。257 收藏 -
fs.Glob 在指定 fs.FS 内按 path.Match 模式查找路径。本文用模板发现示例说明相对根、斜杠、通配符层级、空结果和模式错误,并解释为何它不能承担读取权限或完整性检查。257 收藏 -
Go flac 的 Stream.Seek 接收绝对采样编号并返回目标帧的首采样编号。本文说明怎样用 NewSeek 建立可定位流,再用 ParseNext 读取帧内内容,并处理 seek table、输入类型和范围错误。257 收藏 -
介绍 Go log/slog.NewTextHandler 的文本输出方式,说明 Writer、HandlerOptions、最低级别、默认 Logger、字段分组和 ReplaceAttr 的实战用法。257 收藏 -
Go unique.Handle 适合把高重复率的可比较值规范化为可比较身份。本文用字符串分类示例说明 unique.Make、Handle 比较、Value 取值、并发安全和内存收益边界。257 收藏 -
解释 Go x509.Certificate.CreateCRL 的签发证书、吊销条目、私钥和时间参数,并说明旧接口与 CreateRevocationList 的标准兼容边界。257 收藏 -
constant.Float64Val返回机器浮点值和精确性标志。本文给出允许有限近似的转换函数,区分普通舍入、下溢、溢出与未知输入,并说明如何把状态传给展示和导出。257 收藏 -
协议增加未知 ASN.1 字段时,使用 Go 的 asn1.RawValue 读取完整 TLV,正确区分 Bytes 与 FullBytes,并保留原始字节以便转发或重新编码。257 收藏 -
Go embed 子目录读取需区分编译匹配位置、原始文件系统根与子视图根,本文用原创示例说明 fs.Sub、目录枚举、路径前缀及缺失资源的排查方法。256 收藏 -
Go 的 json.Encoder 可以用 SetIndent 设置 prefix 和 indent,让后续 Encode 输出带层级缩进;本文说明最小写法、参数选择、关闭方式,以及它与 MarshalIndent 的区别。256 收藏 -
Go TLS 校验失败而浏览器正常时,重点核对拨号地址、ServerName、SNI 与证书 SAN 的关系,并区分主机名不匹配和信任链错误。256 收藏 -
用 http.Transport.RegisterProtocol 把指定 URL scheme 路由到自定义 RoundTripper,并解释 http.ErrSkipAltProtocol 何时交回 Transport 的默认处理路径。256 收藏 -
用逐行统计工具说明Scanner长行超限,区分初始缓冲、扫描预算与业务长度,处理Err和Bytes复用,并解释何时改用Reader分片。256 收藏