当我想在使用AFNetworking构建的同步引擎中停止所有当前请求时,我确实遇到了问题.
我有5个不同的URL来查询.如果前一个查询正确执行,则每个查询都会启动
这非常有效.
我想随时停止同步过程.所以我的代码是:
- (void)cancelAllRequests
{
NSLog(@"CancelAllRequests");
[[HTTPClient sharedClient] cancelAllHTTPOperationsWithMethod:@"GET" path:@"ws/webapp/services/pull"];
[[HTTPClient sharedClient] cancelAllHTTPOperationsWithMethod:@"GET" path:@"ws/webapp/services/pull_items"];
[[HTTPClient sharedClient] cancelAllHTTPOperationsWithMethod:@"GET" path:@"ws/webapp/services/pull_image"];
[[HTTPClient sharedClient] cancelAllHTTPOperationsWithMethod:@"POST" path:@"ws/webapp/services/push_item"];
[[[HTTPClient sharedClient] operationQueue] cancelAllOperations];
}
Run Code Online (Sandbox Code Playgroud)
但是这段代码似乎无能为力.当我想取消时,我在调用方法后看到所有批处理操作在我的日志中工作.
我错过了什么 ?如果我取消请求,这不会停止使用此请求构建的所有活动操作吗?
mat*_*ttt 26
你应该只需要做[[[HTTPClient sharedClient] operationQueue] cancelAllOperations].取消时的操作尝试尽可能完成执行,但无法确切知道这是如何发生的.在批处理操作的情况下,它可能已经被取消,因为它的所有依赖请求操作已经完成(通过被取消).
| 归档时间: |
|
| 查看次数: |
10369 次 |
| 最近记录: |