Я пытаюсь получить 10000 записей из CoreData в UITableView с помощью NSFetchedResultsController и попытаться сделать это как можно быстрее (так как запрос имеет дескриптор сортировки, для получения этой суммы требуется больше времени данных).Извлечение большого количества данных из CoreData с использованием двух NSFetchedResultsController
Я пытаюсь извлечь 100 записей из CoreData с помощью первого и основного NSFetchedResultsController (используется в методах делегата таблицы), который отображается в таблице, а в другой очереди я начал в viewDidAppear другую выборку для всех 10000 записей на auxiliarFRC. После завершения выборки в AuxFRC я назначаю основному FRC AuxFRC, чтобы все записи были перенесены и я перезагрузил таблицу.
Проблема заключается в том, что UITableView застревает в первых загруженных строках до тех пор, пока AuxFRC не завершит выборку, даже если я отправлю функцию executeFetch, и я не могу понять, почему это происходит, или если этот способ неправильный, используется для извлечения 10000 записей и не обновляется, если данные меняются?
Использование NSFetchedResultsController - лучший способ получить большой объем данных. Используете ли вы [request setFetchBatchSize: 20]? Номер 20 - это только пример. –
Да, я установил размер партии для них обоих, а batchLimit - 100 для первого, но это ничего не меняет, даже если первые 100 записей загружены в таблицу, они завиваются до тех пор, пока auxiliar не завершит выборку. .. – sheisd
Возможно, ваш предикат очень медленный. Приведите пример использования предиката. –