Go的内存管理和垃圾回收
go 堆内存分配管理本质上来说就是一个内存池,先申请一个大内存,然后使用空链表形式将内存合理切割组织在一起https://cloud.tencent.com/developer/article/2051585内存逃逸 -- 逃逸分析
内存逃逸主要原因在于函数返回后,局部变量有没有被外部引用
如果局部变量没有被外部引用,这个变量就会被分配到栈上面
如果局部变量被外部引用,这个变量就会被分配到堆上面内存回收:
三色标记清除+混合写屏障(不需要STW)
https://www.bookstack.cn/read/golang_development_notes/zh-9.6.md
内存管理:
超干货!彻底搞懂Golang内存管理和垃圾回收-腾讯云开发者社区-腾讯云
垃圾回收:
9 Go高级编程 - GO GC 垃圾回收机制 - 《Golang 开发笔记》 - 书栈网 · BookStack