编辑:这句话是“所以在android 2.3并发标记和扫描用于堆栈相关对象处理所有内容作为指针和复制垃圾收集用于堆中的对象”正确吗?谁能解释一下? garbage collector in android 2.3
我知道 Android中的垃圾收集的主题已经讨论过了,但我找不到清楚详细的解释它是如何工作的,特别是在最后一个版本的Android中果冻豆4.2 。
除了主要问题,我还有两个更具体的问题:
1)哪些算法(标记和扫描,并发标记和扫描,复制,生成,增量...)已实施以及它们如何适应到实际的Android / Dalvik ?
2)作为初学者,我如何通过自我分解其工作方式(方法论或工具)?
赞赏任何意见。
答案 0 :(得分:7)
自Gingerbread(2.3)以来,Dalvik的垃圾收集器没有发生重大变化,因此您可以找到那个时代或更新的任何信息都可能适用于Jellybean。
它使用并发标记和扫描方法。它不会复制或压缩,并且具有几代的概念(由合子分配的内存优化)。
了解其工作原理的最佳方法是阅读资料来源。大多数相关代码都位于dalvik/vm/alloc
。