标准库
已收录文章:15篇
-
Golang · Go问答 | 2星期前 | 标准库 · 文件读取 · io.Reader · Go问答 · io.EOF · Go read io.Reader io.EOF Go问答 n err 读取循环回答 Go io.Reader 读取时为什么要先处理 n 再判断 err,解释 n>0 且 err==io.EOF 的边界、错误写法为什么会丢最后一段,并给出可复用读取循环和排查清单。486 收藏
-
Golang · Go教程 | 1天前 | 标准库 · go · html/template · 错误排查 · Web模板 · Parse 模板函数 Go html/template FuncMap 模板初始化Go html/template 使用自定义函数时,FuncMap 必须在 Parse 或 ParseFiles 前注册,否则模板会在解析阶段报 function 未定义。本文用一个邮件通知模板的小实验,拆开注册顺序、模板错误定位、运行时参数校验和安全边界。451 收藏
-
Golang · Go教程 | 1天前 | WEB开发 · 标准库 · HTTP · go · 路由迁移 Go ServeMux HTTP路由冲突 method pattern host pattern把旧版 Go HTTP 路由迁移到支持方法和主机模式的 ServeMux 时,最容易误判的是注册顺序。本文用冲突示例解释方法、路径、主机三种匹配关系,给出启动期检查、兼容写法和 httptest 回归边界,避免服务上线后才发现请求落到了错误处理器。437 收藏
-
用 Python 标准库 sched 做一个本地轻量定时任务实验,覆盖任务注册、轮询运行、周期任务、失败重试、运行检查和清理边界,适合小脚本和本地自动化场景。432 收藏
-
用 Python 标准库 contextlib 写一套资源清理小配方,从自定义上下文管理器、suppress 到 ExitStack,解决文件、临时目录和多资源关闭顺序问题。429 收藏
-
Golang · Go问答 | 4天前 | 标准库 · bufio · 网络协议 · Go问答 · 流式读取 · peek Go bufio.Reader 协议解析 Go问答 Discard UnreadByteGo 用 bufio.Reader 解析带长度或分隔符的协议时,Peek 只是查看缓冲内容,不会推进读取位置;Discard 才会消费字节。本文用一个简化帧协议拆开 Peek、Read、Discard、UnreadByte 的数据流转和边界处理。414 收藏
-
Go 1.24 新增的 os.Root 可以把文件操作限制在指定目录内,减少路径拼接带来的越界风险。本文用一个导入任务目录演示 Open、Join、Mkdir 和遍历文件的安全边界,并用回归测试核对绝对路径、.. 路径和符号链接场景。340 收藏
-
Go 的 sync.Once 适合做只读配置、规则表和重量级客户端的懒加载。它解决的不是语法问题,而是并发场景下只初始化一次、结果复用和失败边界怎么处理的问题。331 收藏
-
Golang · Go教程 | 2星期前 | 并发 · 标准库 · 命令行 · Go教程 · SHA-256 · 文件校验 · 命令行工具 SHA-256 文件校验 worker pool Go教程 目录扫描发布包、离线资料或备份文件交付前,手工比对文件很容易漏。本文用 Go 标准库做一个并发 SHA-256 清单工具:扫描目录、限制并发、稳定输出,再用同一份清单复查文件是否被改动。328 收藏
-
Golang · Go问答 | 17小时前 | 标准库 · 测试 · go · 版本迁移 · benchmark · 性能测试 基准测试 b.N Go问答 Go 1.24 testing.B.LoopGo 1.24 为基准测试增加 testing.B.Loop,能替代手写 b.N 循环,让每次基准运行只做一次昂贵的准备和清理,也减少循环体被编译器过度优化的机会。本文对比旧写法,演示迁移步骤,并说明基准数据变化时该怎么判断。243 收藏
-
Golang · Go问答 | 4天前 | 标准库 · bufio · 网络协议 · Go问答 · 流式读取 · peek Go bufio.Reader 协议解析 Go问答 Discard UnreadByteGo 用 bufio.Reader 解析带长度或分隔符的协议时,Peek 只是查看缓冲内容,不会推进读取位置;Discard 才会消费字节。本文用一个简化帧协议拆开 Peek、Read、Discard、UnreadByte 的数据流转和边界处理。234 收藏
-
Go 拼接文本时,strings.Builder、bytes.Buffer、[]byte 和 strings.Join 的选择取决于输出类型、是否需要读取字节以及片段是否已准备好。文章用最小示例、边界表和基准测试说明各自适用场景。188 收藏