该视频第一部分将谈谈 Golang GC 的设计和现代垃圾收集理论。我们将了解常见的 GC 特征,例如给定的GC 是否是精确的,分代的,压缩的等等,尝试找出每个特征的优缺点,以及它们如何与当前和未来的Golang GC 设计相联系。
在第二部分,将使用一个特定的内存数据库项目作为示例,展示一些简单和一些非常复杂的内存管理技巧,旨在克服 Golang GC 中的某些设计缺点和权衡。我们将讨论指针的普遍性和成本,运行时优化可能有助于减少指针负载(如无指针映射和通道以及基于uintptr的弱指针),讨论对象池以及 sync.Pool 与您常见的基于 channel 的通用池的不同。
在第三部分和最后一部分,我们将聊一些关于本地堆内存分配,替代不安全堆等相关的黑魔法。
视频查看地址:https://www.youtube.com/watch?v=q1h2g84EX1M&t=15s 自备梯子
有疑问加站长微信联系(非本文作者)