【问题标题】:AFJSONRequestOperation delay in responseAFJSONRequestOperation 响应延迟
【发布时间】:2012-04-03 08:45:58
【问题描述】:

AFNetworking 的请求:

  NSOperationQueue *queue = [[NSOperationQueue alloc] init];
    [queue setMaxConcurrentOperationCount:1];
    [queue addOperation:request1];
    [queue addOperation:request2];

request1 在调用它后立即得到响应。 但是第二个 request2 在调用它后收到延迟 14 或 16 秒的响应。

服务器日志显示 request2 与客户端时间相比延迟了 14-16 秒。它立即响应。所以服务器应该是正确的。

可能是什么?

【问题讨论】:

  • 使用 wireshark 或 charlesproxy 捕捉正在发生的事情,这可能会提供线索。

标签: iphone objective-c ios afnetworking


【解决方案1】:

您将maxConcurrentOperationCount 设置为 1 有效地使您的队列串行。这意味着任何时候只运行一个操作。

第一个操作(request1)可能需要 14-16 秒。

如果你想同时运行两个请求,增加maxConcurrentOperationCount

【讨论】:

  • 它没有帮助。请求应按顺序执行。第一反应以毫秒为单位。
  • @phantom.dnepr 如果您需要顺序运行请求,您应该使用NSOperation 依赖项,或者在第一个完成块中创建第二个操作。无论哪种方式,都需要更多信息来了解正在发生的事情,以便为您提供帮助。描述请求是什么,响应的日志,诸如此类。
猜你喜欢
  • 2015-01-02
  • 2012-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多