Go语言技术文章
-
Golang · Go教程 | 6天前 | 标准库 · 配置管理 · 并发编程 · go语言 · 工程实践 · Go并发 延迟加载 配置快照 sync.OnceValue sync.OnceValues
sync.OnceValue 适合把只加载一次的固定配置封装成并发安全的延迟函数。本文给出值语义快照写法,并说明引用类型、错误缓存、panic 重放、日志和热更新边界。462 收藏 -
公共图书馆盘点时遇到书目显示在库、但书架找不到实体书,应先登记为盘点异常并保留索书号、单册条码、架位、查找范围、盘点时间和复核状态,不能直接改成确认遗失。462 收藏 -
Redis Sentinel 的下线判定要同时看时间阈值和 Sentinel 数量:down-after-milliseconds 决定单个 Sentinel 等多久,quorum 决定多少 Sentinel 同意故障。本文用三节点拓扑说明如何设置与复查,避免把检测阈值和客户端重连混为一谈。462 收藏 -
Go url.PathEscape 直接处理路径片段时会把斜杠编码为 %2F;如果观察到斜杠,通常是读取了解码后的 URL.Path,或混用了路径拼接与查询参数编码。本文用最小示例区分 PathEscape、QueryEscape、RawPath 和 EscapedPath。462 收藏 -
os.Root 支持多个 goroutine 并发调用,但 Close 不是业务停机屏障。本文结合官方文档与源码说明在途操作、后续调用和已打开文件的不同结果,并给出先停止准入、排空任务、最后关闭 Root 的实现。461 收藏 -
Redis 的 lfu-decay-time 表示访问频率计数每减少 1 所需的分钟数,默认值 1,设为 0 则不衰减。它不是 TTL,也不是后台定时清零。本文结合 8 位计数器、OBJECT FREQ 和调参场景说明如何选择。461 收藏 -
json/v2 中 omitzero 按 Go 零值判断,omitempty 按 JSON 空值判断。本文用字段类型、IsZero 和迁移清单说明如何选择。461 收藏 -
已有 database/sql.Stmt 需要在事务里执行时,用 Tx.StmtContext 把它映射为事务专用语句。本文说明 context 的作用、提交或回滚时的关闭边界,以及 DB 级 Stmt 与事务级 Stmt 的清理方式。461 收藏 -
讲清 Transformers generate 返回完整序列的原因,分别处理 decoder-only 与 encoder-decoder 模型,用输入长度切出新生成 token,并给出批量解码、特殊 token 和空结果的处理方式。461 收藏 -
Go recover 必须在发生 panic 的同一 goroutine 中由延迟函数直接调用,父函数不能恢复子任务 panic。通过同步与异步示例解释恢复位置、命名返回值和 Result 回传,并保留堆栈、明确数据一致性与新任务边界。461 收藏 -
Java 25 的紧凑源文件可以省略显式 class 声明,配合实例 main 直接运行单文件程序。本文说明最小写法、java 启动命令、参数选择规则和何时恢复普通类结构。461 收藏 -
Go 1.24 起可用 http.Server.Protocols 显式限定服务端协议集合。本文给出只启用 HTTP/1 与 TLS HTTP/2 的最小写法、完整服务代码、客户端协商检查,以及明文 HTTP/2、旧 TLSNextProto 配置和反向代理场景的兼容边界。460 收藏 -
提供一套暖金午后与一套青绿色阴影的复古果园手机壁纸提示词,包含中英文提示词、构图留白、光线颗粒和变体调整方法。460 收藏 -
tview Table 打开选择后,部分单元格仍可能因为 NotSelectable、nil 内容或点击回调而无法进入预期选择。本文按表级开关、单元格状态和事件边界给出排查与修复方法。460 收藏 -
在 Go 的 MarshalJSON 中复用默认结构体编码时,使用不带方法的新定义类型切断递归;本文给出安全写法、扩展字段方式,以及真别名和指针接收者的边界。460 收藏