Хранение изображений в Core Data, как очистить кеш? - PullRequest
2 голосов
/ 15 марта 2012

Я храню изображения в базе данных Core Data. Более конкретно, я использую функцию внешнего хранилища в iOS 5 Core Data, чтобы изображения фактически сохранялись за пределами базы данных на диск, но для этого сценария я не думаю, что это имеет значение. Вот проблема:

Я делаю несколько фотографий и записываю их в объект «Фото». Когда я беру и сохраняю каждую фотографию, я вижу, как увеличивается использование памяти каждый раз. У меня сложилось впечатление, что Базовые данные могут испортить неиспользуемые объекты Photo, когда в них нет необходимости, но, похоже, этого не происходит. Есть ли способ заставить Core Data очистить кеш или заставить мои объекты стать неисправными? В конце концов я ударил предупреждения памяти и приложение вылетает.

Ответы [ 2 ]

4 голосов
/ 15 марта 2012

Вам необходимо использовать метод refreshObject: mergeChanges вашего NSManagedObjectContext, чтобы превратить реализованные объекты в ошибки.

См. Документацию на яблоко Здесь

0 голосов
/ 15 марта 2012

Я использовал для удаления файла cache-db sqlite3 при запуске приложения , если очистка кэша необходима или принудительно установлена ​​пользователем.

...