Я много и мало искал это:
В Core Data есть способ прервать / остановить / отменить и выполнить NSFetchRequest?
Я реализую инкрементный поиск в приложении для iPhone, и я пробовал все способы его оптимизации, но этого недостаточно (у меня 42 000 записей), поэтому мне приходится запускать его в NSOperation. Когда вводится новый символ, мне нужно отменить предыдущий запрос fetchRequest, но [nsoperation cancel] ничего не делает.
Другой подход может заключаться в перемещении поля, в котором я ищу, в какой-либо другой прерываемый индекс, возможно, в памяти, или, может быть, в отдельную базу данных sqlite3, которая, похоже, может быть прервана с помощью sqlite_interrupt.