Go语言技术文章
-
JSON.rawJSON 可以把经过校验的原始 JSON 原子值交给 JSON.stringify,适合保留超大整数的数字文本;本文同时说明合法性、字符串语义和兼容性边界。442 收藏 -
批量导入 CSV 时,解析、校验和结果展示最好拆成可观测的前端流水线:主线程只负责触发与通知,Web Worker 分片处理数据,队列状态和失败原因由明确的质量门禁收口。441 收藏 -
用 View Transitions API 给列表新增、删除和筛选加上稳定的视图过渡,同时保留不支持浏览器和减少动态效果用户的可用回退。441 收藏 -
当资源数量运行时才确定时,contextlib.ExitStack 可以把文件、锁和临时清理动作按进入顺序登记,并在退出时逆序回收。本文从一个批量读取小项目出发,说明 enter_context、callback 和异常路径的配合方式。441 收藏 -
Go 的 html/template.URLQueryEscaper 适合把模板参数放进 URL 查询值,但它不是多值参数构造器。本文对照空格、加号、& 和 url.Values.Encode 的输出,给出可复核的写法与边界。441 收藏 -
游咔4.0.7安装前应核对官方入口、Android 7.0及以上要求、包名 com.nenya.bmnc、文件校验值和权限提示,本文整理下载页给出的排查边界。441 收藏 -
Go 泛型约束中的 int 只匹配精确的 int 类型,~int 才会接纳底层类型为 int 的命名类型。本文用最小代码和类型集合说明两者差异。441 收藏 -
用 OpenAI Agents SDK 的 RunState、session_state 和 snapshot 区分三种恢复边界,再用工作区检查点把沙箱任务拆成可重试、可回滚的阶段。441 收藏 -
用 Go 的 multipart.Reader 逐个接收多个上传文件,配合 MaxBytesReader 和 LimitReader 控制请求总量、单文件大小,并正确处理 EOF、超限和临时文件清理。441 收藏 -
asyncio.wait_for 超时后,底层任务看起来还在运行,通常不是超时失效,而是任务正在响应取消并执行 finally 清理,或者被 asyncio.shield 有意保护。本文用最小实验区分取消、清理、保护和 TaskGroup 的边界。441 收藏 -
iter.Seq2 的 K、V 是按值传给 yield 的,不能靠取 range 变量地址消除复制。本文对比指针返回、ID 句柄和保留值返回,给出生命周期、并发与提前停止的实用边界。441 收藏 -
复用 bytes.Buffer 时,旧数据残留通常是因为写入会追加而不是覆盖。本文用 Len、Cap、Reset 和 Grow 拆开逻辑长度、底层容量与切片别名,给出循环复用、容量阈值和返回值复制的处理方式。441 收藏 -
Redis Stream 使用 XTRIM MAXLEN ~ 时,阈值是近似目标而不是硬上限,宏节点边界和 LIMIT 都可能让裁剪后保留少量额外消息。本文用 XLEN、XRANGE 解释结果,并给出精确裁剪与 MINID 的选择方法。441 收藏 -
Golang · Go问答 | 1个月前 | Context · 并发控制 · Go问答 · Go 资源清理 sync.Once context.WithCancel context.CancelFunc
Go 的 CancelFunc 可以被多个 goroutine 重复调用,但这不代表文件、连接和事务清理也天然幂等。本文用统一停止入口、等待工作退出和 sync.Once 设计多入口收尾,说明取消信号与资源释放的边界。441 收藏 -
讲清 Go sync.WaitGroup 的计数快照、Add 与 Wait 的竞态边界,以及动态派生任务和 WaitGroup.Go 的安全用法。441 收藏