Go问答技术文章
-
Go regexp.Longest 会把整体匹配从最左优先改成最左最长,捕获组因此可能随整体候选一起变化。本文用最小示例解释选择规则、POSIX 差异与并发配置边界。146 收藏 -
reflect.Value.Clear 对 map 会删除全部条目并让长度变为 0,对 slice 则只把当前长度范围内的元素设为零值,长度和容量保持不变。本文用示例讲清别名、nil、Kind 和 CanSet 边界。145 收藏 -
Go strconv.ParseFloat 返回 ErrRange 时,返回值通常是 ±Inf,不能直接当作普通业务数值使用。本文用示例说明 ErrRange、ErrSyntax、bitSize 与有限值校验的处理边界。145 收藏 -
Go 错误建模可按调用方需求选择:只需判断固定条件时用哨兵错误,需要读取操作、资源或原因等字段时用自定义类型。本文给出 Is、As、%w、组合模式、信息边界与兼容性检查。145 收藏 -
Golang · Go问答 | 3天前 | goroutine · Context · 并发编程 · 故障排查 · Go问答 · channel WaitGroup Go context ctx.Done 阻塞排查 context.Canceled
Context 取消只会关闭 Done 通道,不会自动打断 channel 收发、WaitGroup、Mutex、Sleep 或不支持 Context 的 I/O。本文按取消链、阻塞点和下游 API 三层给出排查与修复方法。144 收藏 -
gif.EncodeAll 要求 Image、Delay 与非 nil Disposal 按帧对齐。本文给出严格检查、同步筛帧和受控补齐的安全写法。143 收藏 -
encoding/json/v2 解码到 any 时,JSON 数字仍默认使用 float64。本文给出两种避免精度丢失的写法:已知结构直接声明整数类型,动态结构通过 WithUnmarshalers 保留 jsontext.Value,再按业务显式转换。142 收藏 -
并行基准测试不能把 RunParallel 回调里的 PB.Next 直接替换成 B.Loop。本文区分普通基准循环与并行工作分配,给出 B.Loop 迁移范围、RunParallel 正确写法、计时器边界和 Go 版本兼容检查。142 收藏 -
Golang · Go问答 | 3天前 | go · 文件上传 · 流式处理 · 内存优化 · net/http · 流式读取 ParseMultipartForm Go HTTP服务 MaxBytesReader Go大文件上传 MultipartReader
Go 大文件上传内存暴涨,常见原因不是 multipart 本身,而是 io.ReadAll、bytes.Buffer 等整份复制。本文解释 maxMemory 的真实边界,并给出 MaxBytesReader 与 MultipartReader 的流式落盘方案。141 收藏 -
Go 的 gzip.Reader 默认会连续读取拼接的 gzip 成员。本文用原创示例拆开 Multistream、Reset、io.ByteReader、EOF 与尾随数据的边界,帮助你选择整体解压或按成员处理。140 收藏 -
说明 Go xml.Decoder.Strict=false 会修补哪些标签、实体和属性问题,并区分 AutoClose、Entity、输入限制与业务校验的职责。139 收藏 -
Go 浮点计算改成 SIMD 后,末位差异通常来自归约顺序或 FMA 舍入路径变化。本文用一次真实排障思路说明怎样建立标量基线、比较硬件与模拟路径,并结合绝对误差、相对误差、ULP 和业务不变量决定结果能否接受。139 收藏 -
Golang · Go问答 | 5天前 | 标准库 · 并发安全 · HTTP · 源码分析 · Go问答 · Go 闭包 连接池 net/http http.Transport.Clone TLS配置
http.Transport.Clone 会创建新的 Transport,并让连接池、锁和连接计数保持独立;但回调函数、接口值及 tls.Config 浅拷贝内部引用的对象仍可能共享,需要按隔离目标主动替换。136 收藏 -
Scanner.Bytes 返回的是当前 token 的字节切片视图,不保证在下一次 Scan 后继续有效。本文用一个小工具复现变化原因,并比较即时处理、bytes.Clone、append 复制与 Text 的适用边界。136 收藏 -
Go 的 gzip 压缩级别是在 CPU 消耗、响应体大小和端到端延迟之间做取舍。本文用 NewWriterLevel 比较级别,并给出 HTTP Handler 中的配置、Close、Flush 与 Writer 复用注意事项。136 收藏