Go语言技术文章
-
Go SJSON 追加数组元素时,路径末尾使用 -1,例如 items.-1。本文拆开说明它与具体下标、越过数组末尾和数字对象键的区别,并给出可直接改写 JSON 的示例。408 收藏 -
Go 的 vendor 模式和模块缓存不是两份等价副本:-mod=vendor 从项目根目录的 vendor 读取,-mod=mod 才会走模块缓存。本文按命令来源、modules.txt、工作区和工具链四个边界定位结果差异。408 收藏 -
Web Worker 默认会通过 structured clone 复制消息数据。本文用 ArrayBuffer 说明 transferable objects 的写法、发送端 detached 状态、TypedArray 与底层 buffer 的关系,以及结果转回主线程时的生命周期边界。408 收藏 -
Polars的read_csv会直接读取并返回DataFrame,scan_csv先返回LazyFrame,把过滤和列选择组成查询后再collect执行。本文从返回对象、执行时机、下推优化和调用场景说明两者的选择边界。407 收藏 -
Linux 监听 socket 的 backlog 不是一条队列:SYN_RECV 侧对应未完成握手的请求,accept 队列对应已建立但尚未被应用取走的连接。本文结合 ss、tcp_max_syn_backlog、somaxconn 和 listen(backlog) 说明怎样判断两侧压力。407 收藏 -
Go archive/zip 的 CRC 错误通常在条目完整读取到结尾时暴露,而不是在 File.Open 或 ReadCloser.Close 时返回。本文用 io.Copy、zip.ErrChecksum 和双层资源关闭说明如何准确识别损坏压缩条目。407 收藏 -
果蔬分装后,用分装单连接原投入批次和新产出批次,并记录数量与单位。本文通过虚构示例说明混批、拆批及更正记录的关联方法。406 收藏 -
Go WithoutCancel 保留父级值查询,却不继承取消、deadline 与取消原因。本文解释 nil Done 的阻塞行为,用完整示例重新建立独立工作预算,并说明值引用、资源和权限的边界。406 收藏 -
Go text/template 使用自定义函数时,应先通过 Funcs 注册 FuncMap,再调用 ParseFS 解析引用这些函数的模板。本文结合 embed.FS 说明调用顺序、函数签名、解析错误与执行错误的区别。406 收藏 -
SJSON 的 SetRaw 需要一个非空路径,空路径会返回 path cannot be empty,因此它不适合直接替换完整根 JSON。本文区分根文档替换、根对象字段写入和嵌套字段更新,并给出 SetRawBytes 的选择方式。405 收藏 -
fd 默认同时跳过隐藏文件和 ignore 规则匹配的路径。本文区分 -H、-I、-HI 与 -u 的作用,并说明 .fdignore、-E、文件名匹配和完整路径匹配之间的关系。405 收藏 -
MySQL 递归 CTE 的路径列要在锚点查询中先确定足够宽的字符类型,再由递归成员追加节点名称;本文给出写法、长度估算和排查边界。405 收藏 -
用低饱和青白色、分层冰纹和锁屏留白做出干净的冰川裂纹手机壁纸,并提供一张主图、一张冷灰蓝变体、完整中英文提示词和裁切适配清单。404 收藏 -
用 JSON_VALUE 的 RETURNING 明确结果类型,再分别处理路径缺失和类型转换异常,避免 JSON 标量在查询中被当成普通字符串。404 收藏 -
Python 自由线程进入正式支持阶段后,兼容性仍需区分解释器构建、导入后 GIL 状态、扩展二进制与应用同步。本文依据官方文档说明观察信号和独立环境回退,不将可安装等同于并发安全或自动提速。404 收藏