如何å–消NSOperationsQueue中的所有æ“作并从队列中删除所有æ“作

时间:2016-05-18 19:21:26

标签: ios objective-c nsoperationqueue

[self.operationsQueue waitUntilAllOperationsAreFinished];  
[self.operationsQueue cancelAllOperations];

这无法达到我的目的。

如何å–消NSOperationsQueue中的所有æ“作并从队列中删除所有æ“作?

1 个答案:

答案 0 :(得分:0)

您ä¸éœ€è¦[self.operationsQueue waitUntilAllOperationsAreFinished]。

[self.operationsQueue cancelAllOperations]åªå¯¹é˜Ÿåˆ—中的所有æ“作设置isCancelled = YES,由æ“作本身决定对此åšå‡ºå应。

所以你需è¦åšçš„就是在self.isCancelledè¿è¡Œæ—¶å®šæœŸæ£€æŸ¥ã€‚{/ p>

- (void)main
{
    if (self.isCancelled) {
        return;
    }

    // Do some work

    if (self.isCancelled) {
        return;
    }

    // Do some more work
}