gpt4 book ai didi

AFNetworking + cancelAllRequests

转载 作者:行者123 更新时间:2023-12-03 20:11:02 28 4
gpt4 key购买 nike

当我想停止使用 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];
}

但是这段代码似乎什么也没做。当我想取消时,在调用该方法后,我在日志中看到了所有批处理操作。

我错过了什么 ?如果我取消请求,这不会停止使用此请求构建的所有事件操作?

最佳答案

你应该只需要做 [[[HTTPClient sharedClient] operationQueue] cancelAllOperations] .取消时的操作会尝试尽可能完成执行,但无法保证具体是如何发生的。在批处理操作的情况下,它在被取消时可能已经完成,因为它的所有依赖请求操作都已完成(通过被取消)。

关于AFNetworking + cancelAllRequests,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9583743/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com