-
用 Go 的 io/fs.ReadDir 和 os.DirFS 按目录层级筛选文件,解释排序、DirEntry 判断、错误处理与大目录内存边界,并给出可运行示例。
-
用 Go crypto/tls 的 GetCertificate 配合 atomic.Pointer 保存不可变证书快照,实现不改动 tls.Config 的最小化证书轮换,并厘清并发读取、加载失败和旧连接的边界。
-
Go 1.26 的 errors.AsType 用泛型简化错误类型提取。本文用 PathError 和 ErrNotFound 讲清返回值、零值、errors.Is 以及旧版本兼容边界。
-
Go runtime/metrics.Read 适合把一组运行时指标一次性读入复用的 Sample 切片。本文从 metrics.All 获取描述符,演示样本缓冲、ValueKind 类型分支、未知指标处理与并发读取边界,帮助你写出不会误读数值的采集代码。
-
Go 标准库的一次性初始化函数适合封装成可并发调用的闭包,但它缓存的是一次执行结果,初始化 panic 也会被重复传播。本文用真实源码路径拆开执行、结果可见性、失败语义与重置边界。
-
Go 1.24 引入的 crypto/subtle.WithDataIndependentTiming 能在敏感计算期间启用架构相关的独立时序能力,但它不会把变长代码自动变成常量时间。本文用最小示例说明包裹范围、嵌套调用、goroutine 继承和旧版本兼容边界。
-
fs.WalkDir 面向抽象文件系统,filepath.WalkDir 面向本机文件路径;两者共享 DirEntry 回调,却在路径格式、数据来源和测试方式上有关键差异。本文用同一项目录扫描任务拆开选择边界,并给出可验证的代码写法。
-
Go 反射处理结构体元数据时,可以用 reflect.Type.Fields 按声明顺序遍历 StructField,再通过 Tag.Lookup 读取标签;需要同时拿到字段值时使用 reflect.Value.Fields。本文从字段扫描、标签校验到嵌套结构体边界给出可运行示例。
-
Go 1.22 引入的 Request.PathValue 不是从 URL.Path 里随便切字符串,而是读取 ServeMux 匹配结果中的命名通配符。本文用最小路由示例核对普通通配符、{name...}、未匹配请求、URL 解码和 SetPathValue 的边界。
-
bytes.FieldsSeq 从 Go 1.24 开始提供按 Unicode 空白切分字节串的单次迭代器。本文对比 bytes.Fields,解释 subslice、空白边界、迭代提前停止和底层字节切片生命周期。
-
通过一个可运行的 Go 示例,拆解 sort.Find 的比较函数方向、最小插入点和 found 返回值,避免把它误用成返回 -1 的查找函数。
-
Go 1.25 为 testing.T 增加了 Attr 方法,可以把稳定的测试元数据写进普通测试日志和 go test -json 的 attr 事件。本文用一个订单接口测试拆开 t.Attr 的调用位置、键值边界、JSON 验收方式,以及与 Log 和 Output 的分工。
-
net/netip.Prefix.Overlaps 用来判断两个 CIDR 前缀是否包含共同 IP,但地址族、零值前缀、IPv4 映射 IPv6 和 /0 边界都会影响结果。本文用一段可运行的 Go 代码拆开这些判断。
-
当一个 Go 类型同时靠方法集实现文本编码或 JSON 编码时,json.Marshal 会先看 MarshalJSON,再考虑 encoding.TextMarshaler;nil 指针又有单独的保护规则。本文用最小示例拆开调用优先级、指针接收者和嵌套字段边界。
-
Go 的 time.Duration.Abs 可以把负持续时间转成正值,但对 math.MinInt64 有特殊处理:结果是 math.MaxInt64。本文从源码语义、正常调用和边界测试三个角度说明如何安全展示耗时。