Go语言技术文章
-
Golang · Go问答 | 1个月前 | 标准库 · 单元测试 · 资源管理 · Go问答 · Go testing.T.Cleanup Cleanup 注册顺序 Go 子测试资源释放 testing 包
Go testing.T.Cleanup 采用后注册先执行的顺序,并且父测试的清理会等所有子测试完成后才运行。本文用嵌套测试和失败场景拆开注册时机、执行边界与资源释放写法。414 收藏 -
用 pathlib.Path.resolve 规范化用户提供的文件名,并通过根目录边界校验拦截 .. 与符号链接带来的目录穿越风险。414 收藏 -
学校食堂留样记录至少要能对应食品名称、留样量、留样时间和留样人员;柜内温度、审核与销样信息可作为内部复核字段,关键是每餐每品种、样品和台账一致。414 收藏 -
Redis Hash 适合把对象拆成多个 field。本文用 HSET 和客户端示例说明如何只更新一个子键,减少大对象读写,并处理返回值、并发覆盖与过期时间边界。414 收藏 -
Golang · Go教程 | 1个月前 | 错误处理 · bufio · Go教程 · Go bufio.Scanner Scanner.Buffer 超长行 MaxScanTokenSize ScanLines
Go bufio.Scanner 默认 token 上限约为 64 KiB,扫描日志、CSV 或协议长行时可能返回 token too long。本文解释 Scanner.Buffer 的初始容量与最大上限,比较 Scanner、Reader 和整体读取的选择边界。414 收藏 -
Go 返回短子切片时,普通切片表达式仍会共享大数组。本文用 make+copy、slices.Clone 和 bytes.Clone 说明如何复制窗口数据,并解释三索引表达式为何不能解决内存持有问题。414 收藏 -
Linux epoll 的 ET(边沿触发)模式不是只读一次,而是每次收到事件后把非阻塞 fd 处理到 EAGAIN。本文解释剩余数据为何不再提醒、给出 recv 循环的错误分支,并补上 EOF、EINTR 和单连接饥饿的排查要点。414 收藏 -
go test -race 不负责提供共享变量读取接口,而是报告并发读写之间缺少同步的路径。本文用最小示例说明如何定位 Read/Write 栈,并选择互斥锁或原子读取修复。414 收藏 -
本文围绕LibTV高可控视频输出特性,从五个维度拆解适配任务场景,给出创作者团队可直接套用的决策参考和实操说明。414 收藏 -
Go os.CreateTemp 的 pattern 不是完整文件名模板,而是带可选星号的前缀和后缀规则。本文用批次前缀、随机段和扩展名组成可追踪临时文件名,说明 Name、Write、Close、Remove 的配合方式,以及目录、权限和失败清理的边界。414 收藏 -
Go go generate 的参数直接跟在生成命令后面,双引号可以保留带空格的单个参数,GOFILE 等自动变量适合减少硬编码。本文用 flag 和 -command 给出可维护的配置方法。414 收藏 -
CSS 容器样式查询可以用 @container style() 读取父容器上的自定义属性。本文用 card-mode 示例说明无值和值匹配、继承、计算值、@property、命名容器、尺寸组合和兼容降级。414 收藏 -
提供水墨锦鲤涟漪手机壁纸的中英文提示词、锁屏留白构图、配色光线变量、主图与变体下载及手机适配建议。414 收藏 -
PHP match 使用 === 判断分支,类型和值必须同时一致。本文通过对照 switch、请求参数规范化、default 与 match(true) 说明严格比较如何减少意外命中。414 收藏 -
对比 Go filepath.IsLocal 与 filepath.Clean 的职责、边界输入和安全路径拼接方式,说明词法判断与真实文件系统检查不能混为一谈。414 收藏