AFNetworking超时

时间:2013-02-15 09:16:33

标签: ios timeout httpclient afnetworking afjsonrequestoperation

我使用AFJSONRequestOperation上传图片。

在上传图像数量的情况下,某些请求因超时错误而失败。

我试过

AFJSONRequestOperation *operation = ...
[operation start];

AFJSONRequestOperation *operation = ...
[operations addObject:operation];
...
[client enqueueBatchOfHTTPRequestOperations:operations progressBlock:nil completionBlock:nil];

然而,仍然没有运气。

我认为时间计数在创建操作时开始。

那么,我应该为我自己的算法逐个安排请求吗?

1 个答案:

答案 0 :(得分:1)

值得注意的是,AFNetworking将创建尽可能多的NSOperations,因为系统有资源并同时运行它们。问题是应用程序/计算机可以同时进行多个网络连接。操作开始后计数开始。出于所有实际目的,在iPhone上你可能看不到问题,因为运行多个操作的资源较少,但模拟器一次可以运行数百个线程(比最大并发网络连接多很多)。

我的建议是将并发操作(我认为AFHTTPClient中)的数量限制在比NSOperationQueueDefaultMaxConcurrentOperationCount更合理的范围内,这允许设备运行尽可能多的资源。