我使用AFNetworking
AFHTTPClient
只是为了举例,但这个问题一般是关于NSOperationQueue
。客观c - 在NSOperationQueue取消操作
AFHTTPClient
管理客户发出的请求NSOperationQueue
。
它也有一个cancelAllOperations
方法遍历self.operationQueue.operations
和每个调用[operation cancel]
。
如果我理解这个权限,它将取消队列中等待的所有操作 - 意味着尚未开始的操作,但是当前正在运行的操作是什么?他们不会被取消??
是的,但问题是如果我迭代操作Queue.operations将包括“当前正在执行的操作”?我想,当一个操作开始时,它会出队,不是吗?所以这意味着它不会在我操作取消时操作Queue.operations,它不会被取消否? – Eyal 2012-07-10 10:08:06
操作保持在队列中,直到它报告完成其任务 。 – msk 2012-07-10 10:10:36