Go语言技术文章
-
tuozi工具箱产品站称应用约占50MB、冷启动约0.5秒,并支持Android 5.0及以上;本文区分页面自述与实际设备表现,说明如何核对入口、功能范围和安装前注意事项。108 收藏 -
多租户向量检索不能只依赖相似度。本文说明如何从服务端鉴权上下文得到 tenant_id,为记录建立精确过滤字段,并比较共享集合、分区键和独立集合的隔离边界。108 收藏 -
maps.Copy 只负责把源 map 的键值写入目标 map,不会替 nil 目标分配存储。本文解释 nil map 的读写边界、make 初始化方式,以及函数内初始化后如何返回可写 map。108 收藏 -
Go 的 time.Time 比较不能只看打印出来的日期。Equal 比较时间瞬间,== 还会比较 Location 和 monotonic clock 读数。本文用跨时区、time.Now、序列化和 map 键几个场景说明迁移边界。108 收藏 -
Go 的 -ldflags -X 只能写入满足条件的包级 string 变量,不能修改 const。本文用最小示例说明正确声明、完整 import path、初始化边界和不生效时的排查方法。108 收藏 -
go.work 的 use 不是递归目录扫描器。本文用 GOWORK、go list 和嵌套模块示例,说明本地 workspace 如何影响依赖解析,以及 CI 如何避免误用本地模块。108 收藏 -
讲清 Go errors.Join 在资源清理中的用法:如何合并主错误与 Close 错误、批量保留多个清理错误,并用 errors.Is 与 errors.As 做判断。108 收藏 -
用 AbortController 和 AbortSignal.timeout 为 Fetch 设置超时,区分 TimeoutError、AbortError、HTTP 状态和普通网络错误,并给出兼容回退写法。108 收藏 -
模型流式输出中断时,不要直接把请求重发并拼接全文。先保存 request_id、事件序号和幂等键,重连时重放已确认事件,再按供应商能力决定是否续生成,才能避免重复展示和状态错乱。108 收藏 -
CNCF 项目毕业代表生态成熟度提升,但不等于所有版本都有统一长期支持。本文把生命周期、毕业尽调、版本兼容矩阵和维护窗口整理成一份可执行的生产采用清单。108 收藏 -
PHP match 没有命中任何分支时会抛出 UnhandledMatchError。本文用状态映射示例说明何时保留异常、何时增加 default,并给出输入校验与测试边界。107 收藏 -
context.WithValue 适合传递贯穿请求链的元数据,不适合替代函数参数或承载业务配置。本文用键类型、取值失败和测试隔离三个边界,说明什么时候该用、什么时候该拆出显式参数。107 收藏 -
MySQL 8.4 的 SHOW GRANTS 只看账号时容易漏掉角色携带的权限。本文用 app_read、app_write 和 report_user 拆解角色授予、默认激活、CURRENT_ROLE() 与 SHOW GRANTS ... USING 的核对顺序。107 收藏 -
csv.DictReader 遇到重复表头会发生字典键覆盖。本文用 csv.reader 按位置保留原始列,再生成唯一字段名,并说明 restkey、restval 的适用边界。107 收藏 -
仓储收货时,危险化学品标签上的 pictogram 不能单独当作储存结论。本文按化学品标识、象形图、信号词、危险性说明和防范说明拆解阅读顺序,并说明标签模糊、图示冲突或信息不全时如何暂停入库、核对SDS和联系供应商。107 收藏