Go语言技术文章
-
Go 默认把接口中的 JSON 数字解码为 float64,超过安全精度时可能改变原始值。本文用 Decoder.UseNumber 保留 json.Number 文本,先用 json.Valid 和格式判断选择 Int64 或 Float64,再处理小数、越界和浮点误差。302 收藏 -
本文说明如何用 Go httptrace.TLSHandshakeDone 记录 TLS 握手成功或失败,区分连接复用、握手状态与 HTTP 请求结果,并处理回调并发和敏感日志边界。298 收藏 -
TCP 是字节流,单次 Read 不保证拿到完整网络帧。本文用 io.ReadFull 读取固定帧头和帧体,结合 binary.BigEndian 解析长度,并说明 EOF、UnexpectedEOF、超长帧和持续连接循环的处理边界。168 收藏 -
Go encoding/csv 可以用 Reader.Comment 忽略指定格式的注释行,连续分隔符产生的空字段仍会保留为字符串空值。本文给出逐条读取、字段数约束、空白处理和解析错误的生产写法。303 收藏 -
Go bufio.Reader 读取长记录时,使用 ReadBytes 处理单字节分隔符与 EOF 尾部数据;需要业务长度上限时,用 ReadSlice 分片复制并在追加前限制累计字节数。266 收藏 -
Go 的 os.ReadFile 会把完整文件返回为 []byte。本文从内存边界出发,说明什么时候继续使用它,什么时候改用 os.Open、io.Copy、io.LimitReader 或有界逐行读取。272 收藏 -
GPT-6.1 Terra 上线后,评估重点不是复述发布会分数,而是用同一批代表性图片、相同 reasoning effort 和准确率、延迟、成本指标做回放,再决定灰度范围。452 收藏 -
GNU find -files0-from 使用 NUL 分隔清单传递搜索起点。结合零深度筛选、管道输入和特殊文件名示例,说明如何保留名称边界,以及空清单、重复路径、递归和兼容性限制。391 收藏 -
Linux ss -o 显示 TCP 定时器,state 筛选连接状态。通过状态与端口查询示例,解释 timer 名称、剩余时间和计数,并说明与 TCP 内部信息关联观察时的适用边界。369 收藏 -
PHP array_find 按数组顺序调用回调,返回第一个满足条件的元素值;找不到时可使用默认值。本文用订单、关联数组和哨兵对象说明回调参数、短路行为、null 边界,以及 array_find_key、array_find_last 的选择。240 收藏 -
Redis FUNCTION DELETE 会删除整个库及库内全部函数。本文说明库名与函数名的区别、删除后 FCALL 失效的判断方法、从受控源码恢复的命令,以及集群部署和权限隔离的注意事项。255 收藏 -
io.MultiWriter 会按顺序把同一份数据写给多个 Writer;任一 Writer 返回错误就停止后续写入,短写则转换为 io.ErrShortWrite。本文说明部分成功、失败传播与补偿设计的边界。112 收藏 -
Go time.After 放在 select 循环里会在每轮创建新的 Timer。本文解释持续就绪分支下的定时器积压、Go 1.23 的垃圾回收变化,以及如何用一个可复用的 time.Timer 配合 Stop、排空和 Reset 降低分配压力。143 收藏 -
CNCF 2026 年 9 月新增九家 Silver Member,能力覆盖 AI 工厂、生产推理、资源效率、主权 Kubernetes、托管云和数据检索。本文区分公告事实与趋势判断,说明 AI 基础设施投资为何从单纯算力扩展到推理运营、混合部署和数据访问。318 收藏 -
GitHub Actions 的多云 runner 与工作流依赖锁文件更新,不会强制改写现有 YAML,但会让网络白名单、依赖治理和发布门禁需要重新配置。341 收藏