Я реализовал поиск и для каждого нового символа, введенного пользователем performFetch:
, запущен внутри performBlock:
. Если строка поиска изменится, я хотел бы отменить предыдущий начальный блок и начать все заново. Как я могу отменить или хотя бы проинформировать об этом блок внутри performBlock:
?Как отменить executeBlock:
Пример кода я прямо сейчас:
[myManagedObjectContext performBlock:^{
// fetch from background queue
if([[self fetchedResultsController] performFetch:nil]) {
// update the view from the main queue
// don't do this if performBlock already got started again! but how?
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
// refresh UI
}];
}
}];
Спасибо за этот простой и понятный ответ. 'NSAsynchronousFetchRequest' выглядит как хорошее решение –