Go语言技术文章
-
Go 1.27 默认启用小对象专用分配器,针对部分小于 80 字节的分配降低调用成本。本文拆开 GOEXPERIMENT=nosizespecializedmalloc 的构建期语义、runtime 条件和 A/B 对照用法,避免把它误当成运行时开关。176 收藏 -
Go unique.Handle[T].Value() 会返回创建句柄的 T 值浅拷贝。本文从 Go 1.23 引入的 unique 包出发,说明如何取回已驻留值、比较等值句柄,以及迁移时需要注意的可比较约束和生命周期边界。176 收藏 -
Java Flow 的 request(long) 不是暂停线程,而是增加订阅未满足需求。本文从 onNext 停滞现象出发,解释固定窗口、半窗补请求、非法参数,以及 HttpClient BodySubscriber 的继续请求与取消边界。176 收藏 -
Cmd.Environ 返回命令按当前配置运行时使用的环境副本。本文用一个小型命令行示例说明 Dir、Env、PWD、重复键和执行结果之间的关系。176 收藏 -
Go gzip.Reader 默认会把拼接的多个 gzip 成员连续解压。本文说明 Multistream(true) 的默认语义,以及怎样用 Multistream(false)、io.ByteReader 和 Reset 按成员读取。176 收藏 -
小型餐饮店准备食品经营许可延续时,先核对有效期、经营场所和许可项目,再按国家规则准备延续申请书、原许可证及当地办事指南要求的相关材料。本文区分延续、变更和重新申请,说明时间窗口、现场核查和到期后的经营边界。176 收藏 -
Redis BITFIELD_RO 只接受 GET,可以从同一个字符串按位宽和偏移一次提取多个整数。本文用非字节对齐字段说明 i/u 编码、# 偏移、返回顺序和缺失位边界。176 收藏 -
Redis XTRIM MINID 按消息 ID 阈值清理 Stream,严格小于阈值的消息才在清理范围内。本文区分精确与近似模式、消息时间与业务时间,并说明消费者组 PEL 引用、版本策略、权限及审计注意事项。176 收藏 -
Java ImageReader 的 dispose 只负责释放 reader 自身资源,ImageInputStream 仍需由调用方关闭。本文用一段完整的 Java 读取示例说明两者的职责边界、清理顺序和异常路径。176 收藏 -
Go time.Time 默认通过 MarshalJSON 输出带引号的 RFC 3339 时间字符串,并保留有意义的子秒精度。本文说明纳秒尾随零、时区偏移、Location 名称、单调时钟、零值和错误边界,帮助接口设计避免误判精度丢失。176 收藏 -
Golang · Go教程 | 2天前 | 并发 · errgroup · goroutine · 错误处理 · go · Go 并发控制 SetLimit x/sync/errgroup TryGo
Go x/sync/errgroup.TryGo 会在并发额度未满时启动任务,额度已满时立即返回 false。本文用 SetLimit、TryGo 和 Wait 说明非阻塞提交、拒绝分支、错误回收与 Context 取消的边界。176 收藏 -
通过给表驱动用例增加语义化 Name 字段,让 Go testing.T.Run 的输出、-run 筛选和失败定位保持稳定。176 收藏 -
MySQL START TRANSACTION READ ONLY 限制的是当前事务对永久表的写入。本文用 SQL 和连接池代码说明普通查询、写入、锁定读、临时表以及提交回滚的边界。176 收藏 -
Golang · Go教程 | 11小时前 | 标准库 · Go教程 · net/http · Go net/http http/2 ResponseController Hijack ErrNotSupported HTTP/1.x
Go ResponseController.Hijack 需要按调用结果判断当前 ResponseWriter 是否支持连接接管。本文区分 HTTP/1.x、HTTP/2 与包装器能力,说明 ErrNotSupported 的降级处理,以及接管后 net.Conn、缓冲读写器和 Request.Body 的责任边界。176 收藏 -
Go io.NewOffsetWriter 把相对偏移映射到底层 WriterAt 的 base+off,适合文件分区、文件头和分段写入。本文讲清 Write、WriteAt、Seek、io.CopyN 及上限保护。175 收藏