Остановка NSOperationQueue при внесении изменений в пользовательский интерфейс - PullRequest
0 голосов
/ 13 марта 2012

У меня есть пользовательский класс NSObject (Downloader), который использует NSOperationQueue для загрузки изображений и, когда он загружает изображение, он обновляется до пользовательского интерфейса основного класса. Здесь проблема в том, что я не могу отменить операции в классе загрузчика, когда происходит загрузка. Я предполагаю, что основной поток удерживается обратными вызовами NSOperationQueue, и когда я пытаюсь вызвать отмену операций, он отвечает только после завершения загрузки. Пожалуйста, предоставьте мне прорыв в это ... от всей души спасибо ...

1 Ответ

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

Вы можете сделать в свойстве AppDeledate, например

@property (readwrite) BOOL isOperationQueueMustHold;

и затем в цикле работы добавьте этот код:

while (delegate.isOperationQueueMustHold == YES)
{
   sleep(1);
}

это прекратит тяжелую работу, пока пользовательский интерфейс будет обновлен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...