2011-06-01 81 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