我有一個ViewController被推到NavigationController堆棧。一旦它被推入堆棧,它就開始下載一些圖像,通過一個下載器對象來負責下載後臺線程中的圖像。圖像可能需要幾秒鐘,即使通過WiFi下載。當圖像完成下載時,下載器對象指示ViewController佈置其圖像,將新下載的圖像放到分頁的UIScrollView的背面。然而,在這段時間內,用戶可能已經按下「後退」按鈕,並且ViewController現在可能已被釋放/解除分配,因此下載器對象將導致SIGABRT錯誤消息,並且應用程序將崩潰。如何處理ViewController被釋放後,射出背景線程,現在釋放ViewController?
我應該如何處理這種情況?有沒有辦法檢查釋放/釋放的實例?或者以某種方式來捕捉錯誤和日誌,然後忽略它呢?
也許在某些情況下,這將會很有用,但我實際上將下載的數據存儲在數據庫中,無論它是否顯示成功,因此終止下載實際上會反作用 - 感謝提示,儘管使用通知而不是代表可能會在某些時候有用。 –