Go语言技术文章
-
Go netip.AddrFromSlice 可以把 4 字节或 16 字节切片解析为 netip.Addr。本文说明 IPv4、IPv6、长度错误、IPv4 映射 IPv6 与 AddrFrom4、AddrFrom16、ParseAddr 的选择边界。481 收藏 -
Redis BLMOVE 的 timeout 按秒设置,0 表示无限等待。本文用 CLI 和 go-redis/v9 演示有限等待、redis.Nil 超时分支、context 取消边界,以及可靠队列中 processing 列表的恢复责任。481 收藏 -
os.Readlink 返回的是符号链接保存的目标文字。本文说明相对目标为什么要以链接所在目录为基准,如何处理绝对路径和错误边界,以及何时改用 filepath.EvalSymlinks。481 收藏 -
MySQL MAKE_SET 的掩码 NULL、零值与非零位为何输出不同?通过标签位置、NULL 跳过、空标签和未映射位示例,说明怎样保留原始状态,避免把展示空白误判为没有标记。481 收藏 -
用完整 Compose 示例按字节估算 strings.Builder 容量,提前检查输出预算后调用 Grow,说明中文长度、分隔符、追加容量语义和不预留时的回退方法。481 收藏 -
Go testing.T.Chdir 改的是整个测试进程的当前工作目录。本文用父子测试和 Cleanup 的嵌套场景,解释目录变化的可见范围、恢复顺序与并行限制,并给出更稳妥的测试组织方式。480 收藏 -
OpenJDK 虚拟线程降低了高并发等待型任务的线程成本,但是否真的改善服务端表现,仍要结合 JFR 观察 pinning、提交失败、阻塞事件与外部资源。本文给出一套从录制到判断的协同方法。480 收藏 -
Go base64.Encoding.Strict 会额外检查末尾量子中的填充位是否为零。本文用一个最小示例解释非零填充位、CorruptInputError、换行忽略和标准编码修复之间的关系,帮助定位严格解码失败。480 收藏 -
Polars表达式先描述列变换,放入select、with_columns等上下文后才产生结果;普通Python函数立即处理具体值。本文对比Expr、上下文、原生列运算与map_elements的边界,并给出选型建议。480 收藏 -
Go 的 compress/zlib 可以用预置字典压缩具有固定重复片段的短消息。本文从适用条件出发,给出 NewWriterLevelDict 与 NewReaderDict 的配对写法,并说明 ErrDictionary、Close 和字典生命周期的处理边界。480 收藏 -
Go子测试可通过当前t.Setenv临时设置环境并自动恢复。本文给出串行表驱动示例,说明清理归属、空值与未设置状态,以及Parallel、配置缓存和后台任务的限制。480 收藏 -
Go 正则重复捕获组不会保存每次参与的历史值。本文区分完整匹配与子组槽位,给出先约束记录再提取所有单项的写法,并说明 FindAll、命名组和字节索引的边界。480 收藏 -
CNCF 接纳 Meshery 为孵化项目。本文从项目状态、管理面职责和 AI 配置治理三个角度,解释 Meshery 如何组织基础设施模型、设计模式、集群状态与团队协作,并给出谨慎评估边界。480 收藏 -
用 crypto/rand 生成随机字节,再以 RawURLEncoding 得到无等号的 URL 令牌。示例区分随机性、编码格式和业务有效性,并说明严格解析、旧格式迁移与链接使用注意事项。480 收藏 -
Go ServeMux 匹配不到路径时,按 Go 版本、路径段、尾斜杠、通配符、HTTP 方法和 Host 逐项排查,掌握 {id}、{path...} 与 {$} 的实际边界。480 收藏