當您在對話框中調用dismiss()
時,除了隱藏它之外,它是否也將其從內存中移除?它是否會從內存中刪除放置在對話框中的所有對象,如ImageViews
,Buttons
等?Android。在對話框中調用取消
有沒有辦法讓我自己釋放這些對象的內存,而不是等待垃圾收集器去做它的工作?
當您在對話框中調用dismiss()
時,除了隱藏它之外,它是否也將其從內存中移除?它是否會從內存中刪除放置在對話框中的所有對象,如ImageViews
,Buttons
等?Android。在對話框中調用取消
有沒有辦法讓我自己釋放這些對象的內存,而不是等待垃圾收集器去做它的工作?
非常好,這就是我一直在尋找的。 – AndreiBogdan 2012-07-18 13:35:27
您的內存泄漏可能是由其他原因引起的。如果你能縮小一點,來這裏,讓我們再次幫你。 – prolink007 2012-07-18 13:38:23
是的,這是我的下一個職位問題。我會稍微張貼一下。 – AndreiBogdan 2012-07-18 13:39:11
在Java中,內存只能由垃圾收集器釋放,並且只能使所有對象爲空,以便垃圾收集器可以收集內存以釋放內存。
爲什麼你需要這個? Java的全部重點在於它爲您處理內存管理。你有一些明顯的內存問題或什麼?
是的,我願意。它經常會拋出內存異常 – AndreiBogdan 2012-07-18 13:34:14
您能分享您認爲會導致此問題的代碼嗎? – 2012-07-18 13:35:33
谷歌Android開發者文檔說:
公共無效解僱(): 自:API等級1 關閉此對話框,從屏幕中移除。這個方法可以從任何線程安全地調用。請注意,不應該重寫此方法以在對話框關閉時執行清理,而是在onStop()中執行該方法。
手動free
荷蘭國際集團的內存
沒有在Java中是可行的。您可以使用new
分配內存,但垃圾收集器負責釋放它
當垃圾收集器試圖在後面工作時,一個糟糕的想法。
dismiss()
只是隱藏對話框。請致電removeDialog(int)
刪除對它的所有引用,並等待GC啓動。
爲什麼你需要那個!讓系統做它想做的事 – AAnkit 2012-07-18 13:32:11
我有內存泄漏...內存不足異常拋出,我需要釋放盡可能多的內存,因爲我可以。我不確定這個功能是幹什麼的。 – AndreiBogdan 2012-07-18 13:33:24