对于iOS的NSOperationQueue,队列何时删除操作块?对于我的项目,我使用MKNetworkKit来管理网络请求操作,因为您知道请求/响应是异步操作,请求发出后队列会删除操作吗?或者它会等待响应,然后将其从队列中删除?任何人都知道请分享和共同讨论,谢谢。对于iOS NSOperationQueue,队列何时会删除操作块?
0
A
回答
0
操作块应该从NSOperation继承,NSOperation是一个抽象类。 有一些方法可以从操作队列中删除块。
1)你实现了 - (void)main方法,当它完成时它将被从队列中移除。 2)你也可以实现isFinished方法来返回一个实例var,你可以在完成 - (void)main之前处理完成你的块。为此,您还应该更改志愿值,所以操作队列知道何时调用isFnished,就像这样:
[self willChangeValueForKey:@"isFinished"];
finished = YES;
[self didChangeValueForKey:@"isFinished"];
而在你isFinished:
- (BOOL)isFinished {
return finished;
}
+0
太好了,谢谢。这是控制队列和相关操作的好方法。 – jianhua 2014-09-02 10:42:55
相关问题
- 1. 将操作添加到队列时,NSOperationQueue(代理/回调/通知)
- 2. NSOperationQueue队列waitUntilAllOperationsAreFinished挂
- 3. 如何从GCD调度队列中删除排队的块?
- 4. iOS - 如何知道NSOperationQueue何时完成一些操作?
- 5. NSOperationQueue和并发操作
- 6. 在NSOperationQueue中添加操作
- 7. 如何删除settimeOut的队列工作?
- 8. NSOperationQueue操作自我
- 9. 如何删除(删除)Oracle AQ队列?
- 10. 对象不从NSOperationQueue删除执行
- 11. 何时使用NSOperationQueue的mainQueue,何时创建新的队列?
- 12. 仅当用户进行某些操作时才从队列中删除消息
- 13. 为什么删除操作符操作符不会删除NodeList类的属性?
- 14. delayed_job。从队列中删除作业
- 15. 卸载时删除MSMQ队列
- 16. NSOperationQueue取消特定操作
- 17. Python队列问题 - queue.get不会删除对象
- 18. 操作队列中的跟踪操作
- 19. NSOperationQueue操作filteredArrayUsingPredicate错误
- 20. 当队列中的所有操作完成后立即释放NSOperationQueue
- 21. 我是否必须在操作队列本身上读取NSOperationQueue的operationCount?
- 22. NSOperationQueue操作块在SWIFT中无法正常工作
- 23. 不能删除SqlQueryNotificationService队列
- 24. 如何制作NSOperationQueue序列?
- 25. Capture USER_ID用于删除操作
- 26. 相当于操作的UWP删除
- 27. C++删除在队列
- 28. Rabbitmqctl使用删除队列
- 29. ==操作符和列表::删除()
- 30. 删除操作栏
这取决于“NSOperation”类型。它是内置类型之一还是自定义的?如果内置,哪一个? – 2014-09-02 07:14:01
当isFinished为真时,它将被删除。 – quellish 2014-09-02 07:41:33
谢谢你们,它与KVO有关,观察是已完成的变种。 – jianhua 2014-09-02 10:39:57