技术栈

go sdk源码

a18792721831
1 年前
golang·go·go 内存管理·go sdk源码·go 内存模型
Go-知识内存分配在c语言中,malloc方法用于动态申请内存,其中内存分配器使用的是glibc提供的ptmalloc2。除了glibc,业界比较出名的内存分配器有Google的tcmalloc和Facebook的jemalloc, 二者在避免内存碎片和性能上均比glibc有比较大的优势,在多线程环境中效果更明显。 Go语言也实现了内存分配器,原理与tcmalloc类似,简单说就是维护一块大的全局内存,每个线程(Go中为处理器P)维护一块小的私有内存,私有内存不足时,再从全局申请。