【问题标题】:Stop current NSURLConnection停止当前的 NSURLConnection
【发布时间】:2011-08-29 11:07:00
【问题描述】:

目前,每当mySearchBar.text 发生变化时,我都会创建一个NSURLConnection。我遇到了一个问题,如果用户输入文本太快,respondData 会损坏。

所以,我想知道有没有办法检查相同的NSURLConnection 是否仍在加载?如果是,如何断开当前连接并开始新连接?

【问题讨论】:

  • 您是否在 EDGE 模式下尝试过?

标签: ios objective-c nsurlconnection


【解决方案1】:

为那个 NSURLConnection 添加一个属性,在开始新的连接之前,做:

[self.conn cancel];
self.conn = nil;

【讨论】:

  • 同时检查是否为 nil。
  • @PraveenS 不需要检查是否为 nil,发送消息到 nil 不会有任何伤害。
  • 是的,没有必要,但他想知道连接是否存在。因此 nil 检查:-)。
  • 是的,但他只想知道它是否还活着阻止它:)
【解决方案2】:

您可以尝试使用异步请求。 ASIHTTPRequest 是一个很好的调用库。

当您需要发出另一个新请求时,请设置[request cancel];

【讨论】:

  • NSURLConnection 支持异步请求并且有一个取消方法,所以 ASIHTTPRequest 会有点矫枉过正。
猜你喜欢
  • 2011-11-30
  • 1970-01-01
  • 1970-01-01
  • 2014-10-12
  • 1970-01-01
  • 2020-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多