-
Go mime/multipart 的 NextRawPart 用于按顺序读取 multipart 的原始 part。本文从 boundary 解析、EOF 判断、流式保存和 quoted-printable 边界说明调用方式,并区分它与 NextPart 的行为。
-
Go 批量导入后出现 too many open files,通常与 os.File 未及时 Close、循环 defer 作用域过大或并发峰值过高有关。本文给出单文件生命周期、受控并发和 Linux fd 排查方法。
-
Go debug/pe.File.COFFSymbolReadSectionDefAux 用于读取节定义符号后的 COFF 辅助记录。本文从 COFFSymbols 索引、SectionNumber 与辅助数量出发,给出资源安全的读取示例,并说明如何结合 IMAGE_SCN_LNK_COMDAT 解释 Selection 字段。
-
Go 的 bufio.Reader.Discard 用于消费并跳过指定数量的字节。本文用一个固定前缀读取小项目说明 discarded 与 err 的含义,重点处理短读取、EOF、缓冲区边界和负数参数,并比较 Peek、Read 与 io.ReadFull 的适用场景。
-
go-smtp 的 Client.Reset 会发送 SMTP RSET,清除当前 MAIL/RCPT 事务但保留连接。本文说明它适合的阶段、DataCommand 的关闭边界,以及失败后何时应该直接重连。
-
保存 ReaderAt、起始偏移和长度,为每次尝试重建 SectionReader。结合完整示例说明游标复位、读取不足、目标重试、源版本与 HTTP 响应边界。
-
Go context.WithCancelCause 适合把批处理中的首个取消原因沿 Context 传给调用方。本文区分 Err 与 Cause,给出批次级 worker 示例,并说明如何用稳定错误和一次派生上下文减少额外结果包装与分配。
-
Go net/http 中的 Transfer-Encoding 不是普通 Header。本文解释为什么 Header.Set 不能作为可靠控制入口,如何让库根据请求体和长度自动决定,以及何时应设置 Request.TransferEncoding。
-
用 Go testing 的 ns/op、B/op、allocs/op 识别分配热点,再用 AllocsPerRun 把测量范围缩到一个明确的函数调用。
-
Go 1.27 的 httptest.NewTestServer 默认使用内存网络,适合放进 testing/synctest 的并发测试 bubble。本文说明怎样使用 server.Client 发请求、为什么不应调用 Start、URL 和配置的边界,以及 testing.TB 自动清理与 NewServer loopback 模式的区别。
-
用Go bytes.CutSuffix判断并移除一次固定字节后缀,区分空主体与未匹配,说明空后缀、重复标记和共享切片的处理方法,并给出返回独立副本的业务函数。
-
本文围绕 Go embed.FS 讲清静态资源目录、//go:embed 包级声明、隐藏文件规则,以及如何通过 http.FS、StripPrefix 和 FileServer 接入 HTTP 服务。
-
strconv.UnquoteChar 每次只解析输入开头的一个字符或转义序列,同时返回 rune、multibyte、剩余 tail 和错误。本文用字符解析器的场景说明 quote 参数、转义家族、尾串循环与错误边界。
-
Go encoding/hex.NewDecoder 适合把十六进制字符流转换为字节流。本文说明分块读取、奇数长度输入、非法字符和 io.ErrUnexpectedEOF 的区别,帮助你正确收尾而不是把不完整数据误判成正常结束。
-
Go 的 slices.BinarySearchFunc 在未命中时仍会返回有序边界。本文用自定义比较器说明 n、found 的含义,以及如何把未命中的元素插入正确位置,避免排序规则不一致造成错误下标。