Go语言技术文章
-
time.Ticker.Stop 之后是否还能从 C 通道读到一次事件,取决于 Go 版本、go.mod 语义和退出代码的写法。本文用一个定时刷新任务拆解 Stop 不关闭通道、select 退出、Go 1.23 同步 ticker 通道以及旧版本兼容边界。355 收藏 -
解释 Go http.Request.GetBody 的生成条件,区分可重读请求与流式请求,并给出重试、内存控制和上传场景的检查方法。431 收藏 -
URLPattern 适合把前端路由匹配从手写字符串切分收敛到可校验规则,但命名参数、相对 URL 和浏览器缺失都要单独处理。本文用一个商品详情路由拆解匹配判断、参数读取、baseURL 与降级边界。102 收藏 -
浏览器回退后表单内容仍然保留,通常不是 localStorage 写错,而是页面命中了 bfcache。本文用 pageshow、pagehide 和 persisted 判断真实生命周期,再给出需要清空状态时的可靠处理方式。170 收藏 -
科技周边 · 业界新闻 | 1星期前 | 依赖管理 · Node.js · javascript · 工程实践 · 版本发布 · Node.js 26.5.1 Node.js 当前版 npm 11.17.0 V8 14.6.202.34 N-API v147
Node.js 官方归档页显示 26.5.1 的 npm、V8 和 N-API 版本信息。本文把下载包核对、运行时自检、依赖回归和可回退边界串起来,帮助团队判断一次 Current 版本升级是否值得落地。296 收藏 -
Redis 的 LFU 淘汰并不是精确统计访问次数,而是用概率计数器配合衰减周期估算热点。本文从 allkeys-lfu 的工作边界出发,解释 lfu-log-factor、lfu-decay-time 如何影响判断,并给出可复现的验收步骤与误判处理方法。101 收藏 -
解释 Go context 取消后 goroutine 仍可能继续工作的原因,给出 select 监听、资源释放、退出确认和可复现检查方法。389 收藏 -
用 Go 的 http.Server.ConnState 观察连接从建立、活跃、空闲到关闭的状态变化,并结合超时和异常断开日志定位连接问题。425 收藏 -
Golang · Go问答 | 1星期前 | 并发 · 错误处理 · Context · Go问答 · 服务排查 · Go 错误日志 超时 context.WithCancelCause context.Cause 取消原因
只记录 context.Err() 时,Go 服务通常只能看到 context canceled 或 deadline exceeded,无法判断是上游主动取消、下游超时还是业务熔断。本文用 context.WithCancelCause 和 context.Cause 传递可诊断的取消原因,并说明父子 Context、超时边界与日志落点。191 收藏 -
Go 1.21 引入的一次性值函数适合把一次性计算封装成并发安全的惰性值。本文从配置快照加载场景出发,说明它的最小写法、panic 语义、错误值处理、旧版本兼容和上线前检查边界。314 收藏 -
用一个可运行的 Go 示例拆开 reflect.Value 的 CanSet、CanInterface 和 MethodByName 边界,说明什么时候会 panic,以及如何在反射入口先做类型、有效性和可导出性检查。407 收藏 -
Go 1.21 引入的 clear 可以把切片元素重置为类型零值,尤其适合切断指针切片和含引用字段的对象链。本文从数组范围、别名切片和旧工具链兼容三个边界说明它怎么用、哪里容易清错。213 收藏 -
找个人所得税 APP 时,优先从自然人电子税务局或国家税务总局官方页面进入,再在应用市场核对应用名称和发布主体;陌生链接、代办页面和要求额外索取验证码的下载入口不要使用。206 收藏 -
用 URLPattern 把前端路由规则、命名参数和 URL 校验放在同一处,并为暂不支持该 API 的浏览器准备可靠降级。185 收藏 -
解释 Go runtime.SetFinalizer 为什么不是可靠的资源释放器,结合对象可达性、GC 时机、终结器链和 Close 设计给出可验证的使用边界。362 收藏