DartVM GC 深度剖析|得物技术
Source :
mp.weixin.qq.com
Author :
浮生若梦
GC 全称 Garbage Collection,垃圾收集,是一种自动管理堆内存的机制,负责管理堆内存上对象的释放。在没有 GC 时,需要开发者手动管理内存,想要保证完全正确的管理内存需要开发者花费相当大的精力。所以为了让程序员把更多的精力集中在实际问题上,GC 诞生了。Dart 作为 Flutter 的主要编程语言,在内存管理上也使用了 GC。 而在 Pink(仓储作业系统)的线上稳定性问题中,有一个和 GC 相关的疑难杂症,问题堆栈发生在 GC 标记过程,但是导致问题的根源并不在这里,因为 GC 流程相当复杂,无法确定问题到底出在哪个环节。于是,就对 DartVM 的 GC 流程进行了一次完整的梳理,从 GC 整个流程逐步排查。