在网上看到了几篇讲述关于golang内存管理的文章,大致过了tcmollac模型,先mark下链接地址,方便日后对照源码研究
gihub:github.com/qyuhen/book
golang中文社区:studygolang.com/articles/22…
tomollac模型:goog-perftools.sourceforge.net/doc/tcmallo…
直观图如下:
tcmalloc模型的优势在于mcache是绑定在proccessor上的,无锁,会提高效率。
同时span做了大小不同的分类,提高内存利用率,减少内存碎片化。
申请和回收过程也会对相邻内存做合并,减少碎片。
先知:G-P-M模型