Tag

allocation

当前标签下共收录 3 篇文章

在文章页筛选

Go 1.18+ slice 扩容机制详解

围绕 Go 1.18 之后的 slice 扩容策略变化,解释阈值调整、平滑增长公式、内存对齐处理,以及它对扩容次数和内存浪费的实际影响。

旅途散记 · 微信公众号 原文发布于 2026年1月12日 中文 · 入门

收录理由:这篇文章适合作为理解 slice 行为的进阶读物,因为它不只停留在“append 会触发扩容”这一层,而是把 runtime 中的扩容逻辑、版本差异和真实场景下的性能取舍都串了起来,读完之后再看内存优化和逃逸分析会更顺手。

阅读全文

Go 编译器偷偷帮你做的那些内存优化

结合 Go 1.24、1.25 和 1.26 的演进,说明编译器如何把更多切片分配从堆挪到栈上,从而减少分配次数与 GC 压力。

旅途散记 · 微信公众号 原文发布于 2026年2月27日 中文 · 进阶

收录理由:它把“栈分配更便宜”这件大家都知道的事,延展成了对现代 Go 编译器优化路径的完整解读,尤其适合放在新特性专题里,帮助读者建立对切片、逃逸分析和分配成本的更立体理解。

阅读全文 参考文献

Go 字符串连接性能优化:5 种核心方法对比

围绕 Go 中 5 种常见字符串拼接方式的 benchmark,对比它们在固定参数和可变参数场景下的执行时间、内存分配与分配次数差异。

蒸馏大弟 · 微信公众号 原文发布于 2026年3月20日 中文 · 入门

收录理由:这篇文章很适合作为性能优化专题的基础读物,因为它把字符串拼接这个高频但常被忽略的细节讲得很清楚,不仅给出 benchmark 结果,还能直接转化为缓存 key 生成、循环累积和高并发场景下的实际优化建议。

阅读全文