我通過一些例子NSURLConnection的看着,並且都評爲異步相關的,雖然我沒有看到創建的任何操作隊列/線程/調度。 我很想知道 - NSURLConnection是否總是異步執行請求,或者你必須爲它設置一些特殊的東西?是否所有NSURLConnections都異步連接? IOS
0
A
回答
1
NSURLConnection的可以根據你所說的方法來進行實際連接,一旦你分配的NSURLConnection的實例(或使用類方法)同步或異步模式下運行。
對於同步連接,可以使用方法:
+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)error
對於異步連接,使用的方法:
+ (NSURLConnection *)connectionWithRequest:(NSURLRequest *)request delegate:(id <NSURLConnectionDelegate>)delegate
- (id)initWithRequest:(NSURLRequest *)request delegate:(id <NSURLConnectionDelegate>)delegate
- (id)initWithRequest:(NSURLRequest *)request delegate:(id <NSURLConnectionDelegate>)delegate startImmediately:(BOOL)startImmediately
- (void)start
我建議你閱讀蘋果文檔上NSURLConnection瞭解更多信息,並查看示例代碼
相關問題
- 1. 如何鏈接異步NSURLConnections?
- 2. 異步數據連接iOS
- 3. 是否所有實體框架方法都使用異步?
- 4. 是否有可能在異步套接字上等待連接
- 5. 是否所有應用程序都需要數據庫連接?
- 6. 所有連接表都有表嗎?
- 7. @fontface在所有Windows瀏覽器中都是異步的
- 8. 所有的Node.js回調函數都是異步的嗎?
- 9. 所有Play Framework 2操作都是異步的嗎?
- 10. 檢查所有瓷磚是否連接
- 11. 內連接 - 檢查是否所有表
- 12. 所有iOS 6安裝的設備是否都有相機?
- 13. 異步套接字連接
- 14. 是否所有JPEG文件都是JFIF?
- 15. 是否所有SocketExceptions都是「致命的」?
- 16. 所有UIResponders是否都有iPhone通知?
- 17. viewController更改時如何處理異步NSURLConnections?
- 18. 是否可以異步連接到SQL服務器?
- 19. 如何異步檢查客戶端是否斷開連接?
- 20. 與OIO連接/寫入是否真的異步?
- 21. 是否可以使用Zend_Http進行異步連接?
- 22. 異步連接沒有被調用
- 23. 是否所有的Oracle異常都被命名?
- 24. 是否所有的對象都有一個接口?
- 25. tornado.database是否異步?
- 26. NSFileManager.removeItemAtPath是否異步?
- 27. 確定矩陣中的所有元素是否都以Python連接
- 28. Node.Js是否所有的同步調用都保證在異步調用之前執行?
- 29. PostgreSQL與epoll_wait異步連接
- 30. 異步Mysql連接器
謝謝你的快速回復:) 我已閱讀NSURLConnection的參考和指導,但我發現它由於代碼未滿,因此很不清楚。 另外一個問題 - 當使用異步連接,我應該在主運行的循環運行,直到我收到了DidFinishLoading消息,對不對? – Niv
您可以在主運行循環上啓動連接,因爲實際連接將在新線程中完成。當連接完成後,如果您將類設置爲我看到的代理 –
,它會調用您的委託方法。 是否有任何版本的可用於iOs的sendAsynchronousRequest?因爲我只在Mac OS X引用中看到它,而不是ios。 另外 - 我試着創建一個連接並等待它來調用這些消息,但由於某種原因它們並沒有被髮送。當我在當前運行循環中運行代碼直到完成時,就會發送消息。這個問題很奇怪,因爲我認爲委託被連接保留,因此在連接完成/取消/失敗之前不應該被釋放(如果確實如此)。 – Niv