對於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. ios NSOperationQueue,操作全部運行時添加並且不排隊
- 2. 將操作添加到隊列時,NSOperationQueue(代理/回調/通知)
- 3. 何時/如何刪除本地聲明的操作隊列?
- 4. 適用於iOS應用的操作隊列和調度隊列
- 5. NSOperationQueue隊列waitUntilAllOperationsAreFinished掛
- 6. 如何從GCD調度隊列中刪除排隊的塊?
- 7. iOS - 如何知道NSOperationQueue何時完成一些操作?
- 8. NSOperationQueue串行FIFO隊列
- 9. 刪除android:title,對於操作欄按鈕?
- 10. NSOperationQueue和併發操作
- 11. 用於C#的C庫,用於從操作系統隊列中刪除消息
- 12. 在NSOperationQueue中添加操作
- 13. 如何刪除settimeOut的隊列工作?
- 14. NSOperationQueue操作自我
- 15. 如何刪除(刪除)Oracle AQ隊列?
- 16. 當完成塊成功時,NSOperationQueue添加新操作
- 17. 何時使用NSOperationQueue的mainQueue,何時創建新的隊列?
- 18. 對象不從NSOperationQueue刪除執行
- 19. 僅當用戶進行某些操作時才從隊列中刪除消息
- 20. 爲什麼刪除操作符操作符不會刪除NodeList類的屬性?
- 21. 刪除定時器隊列定時器
- 22. NSOperationQueue取消特定操作
- 23. 操作隊列cocos2d
- 24. delayed_job。從隊列中刪除作業
- 25. 卸載時刪除MSMQ隊列
- 26. Python隊列問題 - queue.get不會刪除對象
- 27. 操作隊列中的跟蹤操作
- 28. 如何觸發NSOperationQueue並獲得多個操作塊的結果
- 29. NSOperationQueue操作filteredArrayUsingPredicate錯誤
- 30. 刪除操作不會被調用
這取決於「NSOperation」類型。它是內置類型之一還是自定義的?如果內置,哪一個? – 2014-09-02 07:14:01
當isFinished爲真時,它將被刪除。 – quellish 2014-09-02 07:41:33
謝謝你們,它與KVO有關,觀察是已完成的變種。 – jianhua 2014-09-02 10:39:57