Go教程技术文章
-
用 iter.Pull 把 Go 的 iter.Seq 转成 next/stop 拉取式接口,说明按需读取、正常结束、提前停止、Pull2 和并发调用的边界。217 收藏 -
Go 测试遇到环境、资源或输入条件不满足时,可以用 testing.T.Skip 或 Skipf 标记为跳过并保留原因。本文说明如何划分 Skip、Fail 与 Fatal 的边界,并给出条件测试、子测试和模糊测试的写法。217 收藏 -
Go encoding/hex NewEncoder 返回一个 io.Writer,适合把网络、文件或协议分片连续编码成小写十六进制文本。本文说明 Writer 链、Write 返回值、下游错误和一次性编码 API 的选择边界。217 收藏 -
Go net/http/pprof 默认会注册一组运行时诊断处理器,但诊断入口不应该跟业务接口一起匿名暴露。本文用专用 ServeMux 和鉴权中间件把请求从入口、校验、profile 输出到工具消费串成一条链,并说明拒绝响应、采集时长和关闭诊断服务的边界。217 收藏 -
Go gopacket 可以直接把内存中的 []byte 按指定起始层解码成 Packet,再通过 Layers、Layer 和具体协议层读取以太网、IP、TCP 或 UDP 字段。本文给出一套可复用的内存帧解码写法,并说明错误层、Lazy、NoCopy 与批量解析的边界。217 收藏 -
Go AST 可通过 FuncType.TypeParams 提取泛型函数的类型参数。本文给出名称展开、约束格式化和注释转义的完整示例,说明自动生成文档时的失败处理与语义边界。217 收藏 -
区分 Go 同步与旧异步定时器语义,给出单一持有者复用 Timer 的空闲通知示例,说明旧信号处理、Reset 返回值、并发选择与已启动任务的边界。217 收藏 -
Go cmp.Or 可以从多个同类型候选值中返回第一个非零值,适合表达环境变量、配置文件和代码默认值的优先级。本文拆开零值约定、comparable 类型限制、参数提前求值和配置流水线中的错误边界。216 收藏 -
Go 1.27 调整了 go tool trace 的 -http 监听语义:只写端口时默认限制为本机。本文区分 trace 数据生成与查看服务,并给出本机监听、显式对外监听和迁移检查方式。216 收藏 -
基于Go snowflake v0.3.0,介绍默认节点范围、环境变量配置、共享Node生成编号及扩容边界,区分理论序列容量与实测吞吐,并说明编号存储和性能记录方法。216 收藏 -
Golang · Go教程 | 1星期前 | 标准库 · HTTP · Go教程 · Go MIME Content-Type charset boundary mime.ParseMediaType
Go mime.ParseMediaType 可以把 Content-Type 或 Content-Disposition 拆成规范化媒体类型、参数 map 和 error。本文说明 charset、boundary、引号参数、参数缺失与格式错误的处理边界。216 收藏 -
Go http.Header.WriteSubset 不会替 exclude 的键做规范化。本文拆开 Set/Add、直接写 map 与排除映射的关系,给出稳定过滤 Header 的写法和兼容旧数据的处理边界。216 收藏 -
说明 Go time.Time 的 Round 与 Truncate 如何按固定周期取整并保留 Location,结合固定偏移示例区分绝对网格、本地整点、日历一天及单调时钟注意点。215 收藏 -
Go x/text/search 的 Pattern 适合把语言相关的查找规则编译一次后反复使用。本文从 CompileString 和 IndexString 入手,说明字节范围、未命中结果、Anchor、Backwards 以及并发复用时的边界。215 收藏 -
Go os.Chtimes 接收的是路径,但遇到符号链接时会沿路径找到目标文件并修改访问时间和修改时间。本文用 Stat、Lstat 和零值时间参数拆开观察层级,说明为什么链接自身的 ModTime 不会随调用变化。215 收藏