2011-06-01 41 views
2

我正在写一个NSOperation通过NSURLConnection发出Web服务请求。我想使NSOperation可以被取消,以便在需要时可以中断长时间运行的HTTP请求。如果我同步发出HTTP请求,它会阻塞该线程,我无法检查isCancelled提前终止。从NSOperation异步发出HTTP请求对我没有意义(委托方法在哪里?)。什么是最好的方法来做到这一点?NSULLConnection可取消NSOperation

回答

4

我建议使用ASIHTTPRequest这种类型的问题。 ASIHTTPRequest对象是NSOperation子类,并且支持取消,自定义超时期限和块。

+0

有没有一种方法可以坚持只用NSOperationQueue和NSURLConnection – absessive 2013-11-22 22:56:43

+0

是的,但这不是微不足道的,我假设您宁愿花时间解决您的应用程序特有的问题,而不是常见的网络问题已经被解决了。我建议Mattt的优秀[AFNetworking](https://github.com/AFNetworking/AFNetworking)库,而不是调整你自己的解决方案。 – 2013-11-24 19:18:57