Go语言技术文章
-
用 Python subprocess.run 把多行文本交给子进程,掌握 input、text、capture_output、check 和 returncode 的组合边界,避免 shell 拼接与结果误判。278 收藏 -
用 Python csv.QUOTE_NOTNULL 区分 None 与空字符串,掌握写入、读取、版本兼容和回退检查,避免 CSV 导入时丢失空值语义。225 收藏 -
文章 · java教程 | 1天前 | Java · 版本管理 · 运行时检查 · Java Runtime.Version Java版本比较 feature interim update Java预览版本
用 Java Runtime.Version 解析并比较运行时版本,区分 feature、interim、update、patch 与 pre 预览标记,避免把字符串排序误当成版本判断。332 收藏 -
用 Go 1.23 新增的 os.CopyFS 把 embed.FS 复制到本地目录,说明目标目录创建、已有文件冲突、fs.ErrExist 判断和权限边界。299 收藏 -
用 Go io.Copy 处理上传、代理和文件转存时,先限制输入边界,再利用 ReaderFrom 的快路径,最后用可复现基准确认吞吐与内存变化。409 收藏 -
用 PHP Throwable 的 getTraceAsString 记录异常调用链,同时结合 getTrace、参数过滤和 error_log,避免把令牌、密码等敏感值直接写进线上日志。178 收藏 -
go/ast.Preorder 返回一个按深度优先顺序遍历语法树的迭代器。本文从源码扫描器的高压场景出发,拆解节点顺序、break 提前停止和解析错误的边界,并给出可复查的实现方式。148 收藏 -
pkg.go.dev 在2026年5月推出官方 API,提供模块、版本、符号、引用方和漏洞等结构化查询。本文用一个依赖巡检场景拆解 v1beta 接口、版本边界、缓存策略与落地限制。324 收藏 -
MCP Tasks 把耗时工具调用变成可查询的任务,但取消不是简单发一个通知。本文按能力协商、任务状态、tasks/cancel 请求和客户端收口拆开可取消流程,说明如何处理竞态与终态边界。426 收藏 -
用 testing.T.Context 把测试超时信号传给后台 goroutine,并配合 Cleanup 等待资源退出,避免测试结束后仍有后台任务运行。420 收藏 -
Go 的 regexp.Expand 和 ExpandString 可以把正则捕获结果写入模板。本文从命名捕获组、模板边界和字节切片复用出发,给出可验收的替换写法,并说明空捕获组与并发使用时的注意点。402 收藏 -
Redis Lua 脚本返回多条结果时,关键不在于把值塞进 table,而在于分清 KEYS 与 ARGV、避开 nil 截断,并按 RESP2 的数组语义设计客户端解码。278 收藏 -
Redis ACL LOG 能集中查看最近的认证失败和权限拒绝事件。本文用最小命令演示如何读取 reason、username、client-info 等字段,并说明 RESET 的使用边界。248 收藏 -
time.ParseDuration 能解析带单位的时长,但 Duration 本质是 int64 纳秒数。本文从配置输入、解析错误和范围校验三个环节说明如何避免极大值溢出,并给出安全回退写法。194 收藏 -
给生产中的 InnoDB 大表新增二级索引时,先确认 ALGORITHM=INPLACE 与 LOCK=NONE 的适用边界,再用 metadata_locks、SHOW FULL PROCESSLIST 和索引状态检查锁窗口、失败回退与上线结果。224 收藏