golang 内存分配

315 阅读1分钟

在网上看到了几篇讲述关于golang内存管理的文章,大致过了tcmollac模型,先mark下链接地址,方便日后对照源码研究


gihub:github.com/qyuhen/book

golang中文社区:studygolang.com/articles/22…

tomollac模型:goog-perftools.sourceforge.net/doc/tcmallo…

其他:legendtkl.com/2017/04/02/…

直观图如下:


tcmalloc模型的优势在于mcache是绑定在proccessor上的,无锁,会提高效率。

同时span做了大小不同的分类,提高内存利用率,减少内存碎片化。

申请和回收过程也会对相邻内存做合并,减少碎片。


先知:G-P-M模型