2012-11-16 162 views
1

我試圖儘可能優化我的應用程序。我所要求的是「爲某個鍵添加對象之後的NSMutableDictionary,它是否將數據存儲在RAM內存或存儲內存中?」我在iOS 6.0中使用Xcode 4.5.2在此先感謝NSMutableDictionary和緩存到磁盤

+0

我認爲存儲內存... – dhaya

回答

1

它只存儲指針 - 對對象的引用。該指針存儲在內存中。當添加時,NSMutableDictionary不會做任何特別的事情 - 例如消息的值以某種方式減少他們的物理內存消耗。

如果要將值保存到磁盤或支持清除,請參閱NSCache。這可能正是你正在尋找的東西。

否則,您可能更喜歡只是寫入磁盤,並將NSURL存儲在字典中。很難說,不知道你是如何接近這種優化。

+0

我想讓我的應用程序不使用太多的RAM內存,所以我試圖找到的是NSMutableDictionary存儲它的數據在存儲內存,直到應用程序終止或關閉 –

+0

@AhmedHossny在這種情況下,我建議儘量減少內存消耗/引用/泄漏/循環引用/等,在編寫基於磁盤的實現之前。 – justin

+0

NSCache不會將數據保存到磁盤。 – AlKozin