Iphone 正在对UI进行更改时停止NSOperationQueue

Iphone 正在对UI进行更改时停止NSOperationQueue,iphone,objective-c,ios,Iphone,Objective C,Ios,我有一个自定义NSObject类(Downloader),它使用NSOperationQueue下载图像,并在下载图像时更新到主类UI。这里的问题是,当下载发生时,我不能取消downloader类中的操作。我猜主线程由NSOperationQueue回调控制,当我尝试调用canceloperations时,它只在所有下载完成后才会响应。请为我提供一个切入点…我衷心感谢…例如,您可以在AppDeledate属性中执行此操作 @property (readwrite) BOOL isOperatio

我有一个自定义NSObject类(Downloader),它使用NSOperationQueue下载图像,并在下载图像时更新到主类UI。这里的问题是,当下载发生时,我不能取消downloader类中的操作。我猜主线程由NSOperationQueue回调控制,当我尝试调用canceloperations时,它只在所有下载完成后才会响应。请为我提供一个切入点…我衷心感谢…

例如,您可以在AppDeledate属性中执行此操作

@property (readwrite) BOOL isOperationQueueMustHold;
然后,在您的操作周期中,添加以下代码:

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

这将在更新UI时停止繁重的工作。

您是否在NSU操作中实施了取消测试?