0%

Go内存管理

Go内存管理的核心思想就是把内存分为多级管理,从而降低锁的粒度。

一、概念

      Golang运行时的内存分配算法主要源自Google为C语言开发的TCMalloc算法,全称Thread-Caching Malloc。核心思想就是把内存分为多级管理,从而降低锁的粒度。它将可用的堆内存采用二级分配的方式进行管理:每个线程都会自行维护一个独立的内存池,进行内存分配时优先从该内存池中分配,当内存池不足时才会向全局内存池申请,以避免不同线程对全局内存池的频繁竞争。

二、内存管理

  1. 申请内存

  2. 回收内存

三、参考

  1. 参考一