2011-10-19 54 views
4

我試圖解決我的應用程序中的內存泄漏。 使用Eclipse內存分析器。 由於OOM錯誤,我的應用程序在一段時間後崩潰。Merory Leak;對象沒有GC根

最大的嫌疑人似乎是9個ViewFlippers我使用。當在分析儀中查看它們時,檢查員說它沒有GC根。

這是否意味着它不會被垃圾收集器得到清理? 如果是的話,我將如何去解決這個... 手動清除它們?或者更好,我如何將它包含在GC根目錄中?

Im相當新的內存分析,所以可以使用一些技巧。

回答

4

其實這是相反的,「沒有找到GC根」,是指對象不再被引用所以垃圾收集器會在下一個運行時間清理。

檢查這個偉大的視頻,解釋瞭如何查找內存泄漏:

http://www.youtube.com/watch?v=_CruQY55HOk

+0

啊,謝謝! 我會檢查一下。 仍然困惑的是,爲什麼分析器會將此標記爲可疑泄漏? – ron

+0

由於某種原因我的應用程序保存了以前創建的所有佈局和子項。 我調用Main.SetContentView(newLayout); 必須有一個參考的地方,但仍然沒有找到它... – ron