2009-09-27 13 views

回答

0

如果您是Cocoa編程和一般內存管理主題的新手,我一定會通讀Apple's Memory Management Programming Guide for Cocoa

針對您的問題,當您收到didReceiveMemoryWarning消息時,您會想要發佈任何您未使用的消息。如果您有任何緩存的對象或視圖控制器,請釋放它們(只需確保當它們需要再次使用時,它們就會重新加載)。一般而言,重新獲得資源(如從Internet下載的資源)應該是您發佈的最後一件事,以便用戶不必再次下載它。

1

隨着3.0中的-viewDidUnload的出現,你應該做更多的丟棄對象。它看起來像另一個-dealloc,除了你可能想保留一些對象重新創建並且不想釋放這些對象。

+1

我只是補充說,主要的事情是清除任何IBOutlets你有(如果你有一個IBOutlet你釋放dealloc,釋放它也設置參考爲零)。一般情況下,應該在didReceiveMemoryWarning中清理較重的對象,因爲在內存警告以外的情況下可能會調用viewDidUnload。 – 2009-09-28 06:06:22