Instruments содержит модуль мониторинга памяти.В левом нижнем углу инструментов нажмите на значок шестеренки, затем выберите «Добавить инструмент»> «Мониторинг памяти». Документация Apple должна помочь вам понять, как контролировать память с помощью инструментов.См. Также этот вопрос .
По моему опыту, NSDictionary
и NSArray
достаточно эффективны с точки зрения использования памяти.Я написал несколько приложений, которые хранят тысячи ключей / значений из файлов .csv
или .xml
, и при заполнении NSDictionary
происходит довольно линейное увеличение использования памяти.Я советую использовать профилировщик инструментов в некоторых угловых случаях, если вы можете создать для них модульные тесты.
Я не уверен, что понимаю, почему вы храните записи как в NSDictionary
, так и в NSArray
.
Одна вещь, которую вы можете рассмотреть, если вы достигнете верхних границ использования памяти, - это преобразовать записи в базу данных SQLite, а затем проиндексировать столбцы, по которым вы хотите выполнить поиск.
РЕДАКТИРОВАТЬ: Не забудьте проверить этот вопрос , если вы хотите углубиться в понимание потребления памяти iPhone.