Go教程技术文章
-
Go 的 go/constant.MakeImag 会把 Int、Float 或 Unknown 作为虚部系数,返回 x*i 的 Complex Value。本文用 BinaryOp 组合实部和虚部,说明精确常量、Unknown、非法输入以及 Float64Val 转换时的边界。111 收藏 -
time.Duration.String 会自动选择合适单位,但负值、纳秒尾数和日志截断常让排查结果失真。本文用可复现实例说明 String 与 Truncate 的边界。110 收藏 -
用 atomic.Value 保存不可变配置快照,让热更新线程整份替换配置,并发请求只读当前快照,避开半更新状态与类型不一致 panic。110 收藏 -
用 Go container/ring 实现固定容量的最近采样窗口,说明如何写入、覆盖最旧值,并按时间顺序导出有效数据。110 收藏 -
用 Go atomic.Uint64 实现并发计数,说明 Add、Load、Store 和 CompareAndSwap 的边界,并区分单个计数值与多字段一致快照。110 收藏 -
Go encoding/json 默认会忽略未知字段。本文用嵌套类型的 UnmarshalJSON 和独立 Decoder,只对指定对象开启 DisallowUnknownFields,兼顾接口兼容与请求校验。110 收藏 -
用 Go net/http Client 的 CheckRedirect 比较重定向前后的 scheme、主机和端口,在信任边界变化时清理 Authorization、Cookie 与自定义 API 密钥,并说明默认转发、307/308 请求体和 ErrUseLastResponse 的处理边界。110 收藏 -
用单槽触发缓冲和单 worker 设计 Go time.Ticker 周期任务,避免慢任务重叠执行,同时保留一次下一轮触发,并说明取消、告警与可靠队列边界。110 收藏 -
本文用同一 Dot API 演示 Go SIMD 与标量实现如何通过构建约束共存,并用强制模拟配置验证回退结果与尾部处理。110 收藏 -
Go FlagSet 可以为每个子命令建立独立参数集合。本文用标准库示例说明如何切分 os.Args、分别调用 Parse、处理错误与位置参数,并总结公共参数的组织边界。110 收藏 -
用 Go crypto/rand.Read 为令牌填充固定长度的安全随机字节,解释 32 字节预算、十六进制与 Base64 编码长度、错误边界和上线前应观察的生成指标。110 收藏 -
Go cmp.Or 可以按参数顺序返回第一个非零值,适合组织请求配置、环境变量和代码默认值的回退链,也能串起多字段排序比较。本文说明零值、comparable 约束与参数求值边界。110 收藏 -
介绍 Go os.Root.Name 获取目录名称的用法,给出打开、读取和关闭示例,说明名称在诊断日志中的用途,以及它与绝对路径、实时位置和资源状态的区别。110 收藏 -
用Go标准库crypto/ed25519完成短消息签名与验证,解释私钥、公钥、消息字节和64字节签名的关系,并补充消息被修改、密钥长度、密钥保存与Ed25519选项的边界。110 收藏 -
从实际输入场景说明 fmt.Fscan 如何按空白切分字段、为什么 string 不能直接保留空格,以及需要整行读取时该如何选择 Fscanln、bufio.Scanner 和 Reader。110 收藏