Я работаю над проектом Core Data, который обрабатывает более 150000 записей. Записи отображаются в виде таблицы с помощью NSFetchedResultsController. Записи должны быть отсортированы с использованием разных атрибутов моего объекта.Сохранить NSFetchResultsController cache после убийства приложения
Чтобы сделать приложение быстрым, я создал несколько NSFetchedResultsController
s с различными дескрипторами сортировки, чтобы показать соответствующие отсортированные результаты. Я инициализирую FRC, когда мое приложение запускает и удерживает пользователей в ожидании инициализации FRC. После этого, когда пользователь меняет ключ сортировки, я просто заменяю текущий FRC на новый ключ сортировки, и, следовательно, сортировка чувствует мгновенно.
Приложение работает нормально, когда оно находится в ОЗУ. Но это займет около 15-20 секунд (iPad 1) для инициализации при его уничтожении и перезапуске.
Есть ли способ сохранить данные кэширования FRC на диске, когда приложение завершает работу и восстанавливается, когда приложение перезагружается? Или есть лучшее обходное решение?
Благодарим за расположение файлов кеша. Но только некоторые из кэшей FRC хранятся на диске (они постоянны при запуске приложений). Также я не вижу заметной разницы между поиском при первом запуске приложения или убийством и повторным запуском приложения. Я думаю, что загрузка кеша при запуске приложения может оказаться не лучшей. Я должен искать что-то еще. Я уже использую GCD для асинхронных наборов. – CodeBreaker