Go语言技术文章
-
Go 流式处理最容易留下 goroutine 泄漏的地方,是只取消一端却没有唤醒另一端。本文用 context、io.Pipe、CloseWithError 和底层 ReadCloser 组合出一套双端退出方案。498 收藏 -
本文依据 Bangumi 番组计划公开页面,说明动画标签、分类筛选和条目浏览入口的关系,并提示 Bangumi 主要用于资料整理、收藏与进度管理。498 收藏 -
Go t.Run 子测试采用唯一语义标识,可让 CI 重跑命令保持稳定。本文比较命名方式,给出分组代码与分段正则,解释重复名、斜杠和父测试执行的边界。497 收藏 -
用 Python sqlite3 的 serialize 与 deserialize 在连接之间迁移内存数据库,说明 bytes 快照、事务状态、SQLite 编译能力和恢复连接生命周期的关键边界。497 收藏 -
相机租赁归还应对照原交付清单,分别核对机身编号、配件数量和外观状态。本文用虚构示例说明差异记录、可信订单入口与隐私注意。497 收藏 -
Apache Commons Collections 的 MultiValuedMap 用一个键关联一个 Collection,可按需求选择列表型或集合型实现。本文说明 put、putAll、get、asMap 的用法,以及从旧 MultiValueMap 迁移时的注意点。 497 收藏 -
Go net/http 的请求体是一次性读取资源。Client.Do 会关闭请求体,关闭 TCP 连接也不会把 Body 重置;需要重试或重定向时,应保存原始数据、重新创建 Request,或确保 GetBody 能返回新的读取器。497 收藏 -
解释 Go testing.B.Loop 如何接管基准测试的迭代扩容、计时边界和防编译器消除职责,并说明 b.N 仍可在循环结束后用于自定义指标。497 收藏 -
Go 的 *sql.DB 是连接池句柄,*sql.Tx 才是当前事务上下文。事务开始后继续用 db.Query 或 db.Exec,语句可能落到另一条连接,无法共享未提交状态或随事务回滚。本文给出正确写法和排查清单。497 收藏 -
Go 的 os/exec.StdoutPipe 返回子进程标准输出的读取端,必须先完成管道读取再调用 Cmd.Wait。本文解释管道关闭、输出回压和等待顺序,并给出单路读取、双路消费与 Output 的选择方法。497 收藏 -
photocolors可在产品站在线处理照片,先选择色盘或灵动卡片模式,再检查主色、HEX代码和卡片排版,确认后导出保存或分享。497 收藏 -
sql.Null[T] 的 V 字段即使在 Valid=false 时也必须持有类型 T 的 Go 零值,但这不代表数据库存了零值。本文说明 V、Valid 与 Value() 的语义,并给出避免误判 SQL NULL 的写法。497 收藏 -
解释 asyncio eager_task_factory 为什么会让协程在 Task 构造时同步起跑,说明缓存命中、首个阻塞 await、异常与全局任务工厂带来的顺序变化。497 收藏 -
围绕喵次元公开资料页,说明版本入口、更多版本、无网页端提示和应用内反馈边界,帮助读者按当前页面核对信息。497 收藏 -
数据库 · MySQL | 3星期前 | MySQL · InnoDB · MySQL锁等待 performance_schema.data_lock_waits data_locks锁对象 InnoDB事务阻塞 锁等待链定位
从 data_lock_waits 和 data_locks 还原等待事务、阻塞事务及锁对象,再映射到 InnoDB 会话和最后 SQL,形成一套可复核的 MySQL 锁等待链定位方法。497 收藏