0
我的iPhone應用程序播放由5個用戶圖像組成的幻燈片。這些圖像使用核心數據進行存儲。我注意到每次播放不同的幻燈片時都會建立內存,並且不會釋放任何以前播放過的幻燈片。 這些圖像在對象分配中顯示爲CFData。於是,我就在dealloc方法如果我CFRelease()核心數據中的圖像,我該如何恢復它?
CFRelease(slideshow.image1);
CFRelease(slideshow.image2);
CFRelease(slideshow.image3);
CFRelease(slideshow.image4);
CFRelease(slideshow.image5);
這釋放以前的幻燈片大......但是當我回去再查看相同的幻燈片,它崩潰發佈這個數據。 我猜我需要再次分配/初始化這些圖像,但我不知道如何?或者,也許我應該以不同的方式管理這些內存?
這只是內存使用增長。我一直無法找到任何內存泄漏,但我一直在崩潰。但是,這些崩潰似乎只是在大量使用後才發生。所以我的想法是,內存的增加導致了不穩定。 崩潰通常發生在編輯圖像的時候。重複使用相機和圖像選擇器後。 – Sam 2010-06-14 00:13:43
越來越多的內存使用情況並不一定表明存在問題。如果您使用泄漏來運行您的應用程序並且什麼也找不到 - 尤其是在設備上進行測試時 - 那麼您可能沒有任何泄漏。 – 2010-06-14 00:49:04
有沒有辦法在我調用CFRelease後重新分配這些NSManagedObjects?我無法理解蘋果公司的文檔。 – Sam 2010-06-14 20:23:53