假設我有一個在視圖控制器上有開關的iOS應用程序。我想用這個開關來改變用戶在服務器端的設置。因此,當用戶翻轉交換機時,我啓動異步NSURLConnection來更改設置,並且服務器響應以指示更改成功,以便應用的UI反映更改。視圖控制器將有代碼來處理響應,但如果用戶在翻轉開關後但在響應回來之前更改視圖控制器,會發生什麼情況?viewController更改時如何處理異步NSURLConnections?
0
A
回答
0
有兩種方法:
- 塊的用戶通過顯示進程控制器。
- 如果您不想阻止用戶,請在取消分配視圖控制器時取消通信。如果您不想關閉通信,請將委託對象更改爲某個全局對象。一旦溝通完成,該對象將通過通知。
0
NSURLConnection保留其委託。如果委託是一個視圖控制器,並且用戶遠離視圖控制器,則可能需要取消該請求並將其釋放到視圖控制器的dealloc中。如果你不這樣做,視圖控制器將不會被解除分配,直到連接成功或失敗,並在視圖控制器上調用相關的委託方法,因爲NSURLConnection仍然有強烈的引用。
相關問題
- 1. 如何鏈接異步NSURLConnections?
- 2. afnetworking異步後臺任務處理響應當viewcontroller更改
- 3. 如何異步處理下拉列表更改事件?
- 4. 當Android和iOS不是異步時,如何處理UWP異步?
- 5. 何時處理TcpClients時使用異步?
- 6. System.Threading.Timer處理異步超時?
- 7. ViewController異常更改大小
- 8. 創建多個NSURLConnections。如何識別哪個異步調用
- 9. Node.js處理異步
- 10. Java異步處理
- 11. 異步處理ODP.NET
- 12. 異步TaskManager處理作業/步異常
- 13. 如何處理多個異步請求?
- 14. 異步NSURLConnection如何內部處理
- 15. 如何處理異步I/O方法
- 16. 如何處理異步麪條代碼?
- 17. NodeJS如何處理異步文件IO?
- 18. AngularJS如何處理異步呼叫
- 19. 如何處理異步的ajax響應
- 20. 如何處理許多異步回調
- 21. 如何處理異步循環?
- 22. 如何正確處理異步操作?
- 23. Angular 2如何處理異步調用
- 24. 如何處理ngOnChanges中的異步
- 25. 如何處理多個異步請求?
- 26. 如何處理javascript的異步性質?
- 27. c#如何處理異步void
- 28. 如何使用mysql處理nodejs異步?
- 29. 如何在異步NSURLConnection中處理NSZombies?
- 30. 如何實現異步處理