Go教程技术文章
-
Go 的 log/slog 可以把日志级别集中交给 HandlerOptions 管理,再用 LevelVar 在运行时切换,而 ReplaceAttr 适合统一字段格式。本文用一条可运行的配置链说明三者的职责边界、切换时机与验收方法。310 收藏 -
Go 示例测试可以同时承担文档和回归用例职责:用 Example 命名关联文档对象,用 Output 注释固定标准输出,必要时用 Unordered output 放宽顺序,再把示例纳入 go test ./...。310 收藏 -
Golang · Go教程 | 1个月前 | 流式处理 · Go教程 · CloseWithError Go io.Pipe Go 流式上传 json Encoder 请求体 NewRequestWithContext
用 Go io.Pipe 把编码器输出直接连接到 HTTP 请求体,讲清并行启动、EOF、CloseWithError、context 取消和上传重试边界。310 收藏 -
讲清 Go 泛型切片转换中 nil 与空切片的差异,使用 S ~[]E 保留命名切片类型,并给出类型推断与复制边界的实用写法。310 收藏 -
通过带业务字段的 QuotaError 示例,说明 Go errors.Is 自定义 Is 方法的浅比较规则、%w 包装、目标方向与 typed nil 的处理。310 收藏 -
用 go-chart/v2 的 TimeSeries 传入时间点和数值,再配置 XAxis 的时间格式化器;同时说明排序、时区、刻度格式和数据长度不一致时怎样排查。310 收藏 -
Go go-mp3 的 Seek 面向解码后的 PCM 字节流,不是 MP3 压缩文件偏移。本文说明如何使用可定位输入、按4字节 sample 边界换算偏移,并处理 Length=-1 与跳转后的 Read。310 收藏 -
Go的字符串可包含任意字节,UTF-8入口应先限制大小并取得完整文本,再用unicode/utf8.Valid拒绝无效输入。本文给出纯文本Handler与字节偏移诊断示例,说明分块读取、合法替代字符及有损修复的边界。310 收藏 -
Golang · Go教程 | 4天前 | 标准库 · 错误处理 · go · 时间处理 · Go 时区 日期解析 time.LoadLocation time.ParseInLocation time.Location
Go 解析不带时区的本地日期时,应先加载指定的 time.Location,再调用 ParseInLocation。本文区分空输入、未知时区和日期格式错误,并用 errors.Is 与 %w 保留调用方可判断的错误语义。310 收藏 -
用 Go atomic.Bool 管理进程运行状态,展示并发读取、幂等启动、一次停止和适用边界,给出可复用的最小状态封装示例。310 收藏 -
Go 的 context.WithCancelCause 能让调用方同时看到 context.Canceled 和真正的取消根因。本文用一个请求链示例拆解取消传播、Cause 读取、父子上下文竞速与错误包装边界。309 收藏 -
用 Go 逐行解析简单配置文本:统一换行,跳过空行和整行注释,用 strings.Cut 保留值中的等号,并为格式错误与重复键返回行号。309 收藏 -
Go bufio.Writer 的 Available 返回当前内部缓冲还剩多少字节。本文用 Size、Buffered 和 Available 的关系设计批量写入,说明容量不足、超大记录、AvailableBuffer 以及 Flush 错误检查的处理方式。309 收藏 -
Go time.Ticker 只负责按周期发送时间信号,不会自动结束 goroutine。本文用 context、select 和 WaitGroup 实现可停止的周期任务,并说明 Stop 不关闭通道、慢任务丢 tick 和 Reset 的边界。309 收藏 -
用Go x509.VerifyOptions校验证书时,Roots、Intermediates和DNSName分别承担什么职责?本文给出CertPool组装方法、常见错误排查顺序和吊销检查边界。309 收藏