2

編輯:是這個語句「所以在Android 2.3併發標記和掃描用於堆棧相關的對象作爲指針和複製垃圾回收用於堆中的對象的一切正確嗎?任何人都可以解釋? garbage collector in android 2.3垃圾收集在Android 4.2 Jelly bean Dalvik VM中如何工作?

我知道垃圾收集的Android中主題進行了討論,但我找不到它是如何在Android中的最後一個版本的作品,並特別明確和詳細的解釋這是果凍豆4.2

除了主要的問題我有兩個更具體的問題:

1)哪些算法(標記和清除,併發標記和清除,複製,輩分,增量..)是實施和他們如何將改編成實際的Android/Dalvik

2)作爲初學者,我怎麼能通過我自己打破它的工作原理(方法論或工具)?

任何輸入表示讚賞。

回答

7

自從Gingerbread(2.3)以來,Dalvik的垃圾回收器並沒有明顯改變,所以你可以找到那個時代或更新的任何信息都可能適用於Jellybean。

它使用併發標記和掃描方法。它不復制或壓縮,並且具有幾代人的簡單概念(優化由合子分配的內存)。

理解它如何工作的最好方法是閱讀源代碼。大部分相關的代碼位於dalvik/vm/alloc