Go语言技术文章
-
用 Go archive/tar.Reader.Next 遍历归档时,处理未读数据、io.EOF 与非本地路径,避免跳过文件或把危险路径直接写入磁盘。352 收藏 -
Golang · Go教程 | 5天前 | 标准库 · 定时器 · 并发控制 · Go教程 · 工程实践 · Go 并发 定时任务 time.Ticker Ticker.Reset Ticker.Stop
服务里的定时任务需要动态调整周期时,直接替换 ticker 容易留下旧循环或多条消费路径。本文用一个可停止的刷新任务演示 time.NewTicker、Ticker.Reset、Ticker.Stop 与 ticker.C 的最小配合,说明 Reset 的边界、退出方式和复查方法。207 收藏 -
Redis LMPOP 可以从多个候选列表中找到第一个非空键,并按 LEFT 或 RIGHT 一次弹出指定数量。本文用订单队列示例拆清 COUNT、空队列返回和集群多键边界。494 收藏 -
Golang · Go问答 | 5天前 | 标准库 · 并发编程 · 原子操作 · Go问答 · 竞态排查 · Go sync/atomic CompareAndSwap atomic.Bool 并发状态
用一个一次性初始化场景拆开 atomic.Bool.CompareAndSwap 的成功与失败路径,说明它如何把状态切换和抢占执行权合成原子动作,以及失败后何时跳过、何时重试。316 收藏 -
数据库 · MySQL | 5天前 | 并发控制 · MySQL教程 · 数据库排查 · SQL写入 · 主键回传 · mysql 主键 并发写入 ON DUPLICATE KEY UPDATE LAST_INSERT_ID
应用用一条 INSERT ... ON DUPLICATE KEY UPDATE 保存业务唯一键时,新增行和命中旧行都需要返回同一个主键。本文用 account_code 唯一键演示 LAST_INSERT_ID(id) 的写法、连接级返回边界、并发验收与不适合使用的场景。266 收藏 -
一组适合手机锁屏的雨后苔庭壁纸提示词,包含主壁纸、明显不同的暖色变体、完整中英文提示词,以及锁屏留白、主体位置和色彩改词方法。144 收藏 -
职业学校岗位实习周记不是流水账。本文按任务完成、指导反馈、岗位匹配和安全记录四个重点,说明每周怎么留证、哪些内容需要和学校及实习单位确认。498 收藏 -
用 Go 的 io/fs.ReadDir 和 os.DirFS 按目录层级筛选文件,解释排序、DirEntry 判断、错误处理与大目录内存边界,并给出可运行示例。135 收藏 -
os.File.Sync 会把文件系统缓存中的当前内容提交到稳定存储,但它不是事务提交,也不能替应用目录的重命名与目录同步。本文用 Write、Sync、Close 的错误处理顺序拆开落盘边界。460 收藏 -
用 Go crypto/tls 的 GetCertificate 配合 atomic.Pointer 保存不可变证书快照,实现不改动 tls.Config 的最小化证书轮换,并厘清并发读取、加载失败和旧连接的边界。349 收藏 -
Python 用 zipfile 解压上传文件时,BadZipFile 往往来自错误的文件头、未完整写入或扩展名伪装。本文从 is_zipfile 与 ZipFile 验证开始,再处理成员路径和安全解压边界。246 收藏 -
Go 的 base64.StdEncoding 默认允许一部分非零尾部填充位,Encoding.Strict 会把这类编码判为 CorruptInputError。本文用最小示例说明尾部脏位、换行容忍和 NoPadding 的边界。446 收藏 -
用 Java EnumMap 保存订单状态转移规则,把合法迁移、非法迁移和默认分支放进一张可检查的状态表,避免订单流程散落在多处 if-else 中。282 收藏 -
Go 1.26 的 errors.AsType 用泛型简化错误类型提取。本文用 PathError 和 ErrNotFound 讲清返回值、零值、errors.Is 以及旧版本兼容边界。106 收藏 -
Go runtime/metrics.Read 适合把一组运行时指标一次性读入复用的 Sample 切片。本文从 metrics.All 获取描述符,演示样本缓冲、ValueKind 类型分支、未知指标处理与并发读取边界,帮助你写出不会误读数值的采集代码。417 收藏