我在日志中收到错误消息:
CFNetwork内部错误0xc01a:/SourceCache/CFNetwork/CFNetwork-711.1.16/Connection/URLConnectionLoader.cpp:1321)
问题在于处理极端压力下NSURLSessionDataTask
对象的取消(任务被创建和取消非常快)。未取消任务时不会发生错误。当任务被延迟取消时也不会发生这种情况:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.25 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[_task cancel];
});
很久以前,Apple已停止提供CFNetwork来源。怎么有人去调试这种错误?
答案 0 :(得分:1)
您可以将代码放在此处异常。还要使用NSError类来查找网络任务期间发生的错误。
答案 1 :(得分:0)
这个问题有一个简单的解决方案 - 您应该对请求进行速率限制。 https://en.wikipedia.org/wiki/Token_bucket URLSession
并非设计为可以像这样使用。