簡單地說,我試圖使用AlamofireImage
下載服務器上的映像,並且似乎負責此操作的DataRequest擴展返回主線程上的內容。刪除AlamofireImage responseImage從主線程
這是有問題的,因爲它不可避免地鎖定用戶界面,同時繼續處理。
見附件圖像,斷點暫停(左)主線程的執行
我怎樣才能遷移此DataRequest使用一個OperationQueue,這不是主要的?
簡單地說,我試圖使用AlamofireImage
下載服務器上的映像,並且似乎負責此操作的DataRequest擴展返回主線程上的內容。刪除AlamofireImage responseImage從主線程
這是有問題的,因爲它不可避免地鎖定用戶界面,同時繼續處理。
見附件圖像,斷點暫停(左)主線程的執行
我怎樣才能遷移此DataRequest使用一個OperationQueue,這不是主要的?
我在responseImage函數中添加了一個可選的隊列參數,以便可以使用任意的DispatchQueue
來運行completionHandler
。
這裏是叉:
pod 'AlamofireImage', :git => 'https://github.com/timaktimak/AlamofireImage.git', :branch => 'master'
編輯:它被併入的,所以AlamofireImage現在有調用自定義DispatchQueue
完成塊的功能。
希望它有幫助!
謝謝,看起來不錯 – achi
也許@cnoon能夠提供一些見解? – achi
我認爲過濾器函數是鎖定主線程的東西。我認爲你應該嘗試在不同的線程上應用過濾器。祝你好運! – timaktimak
是的,這是罪魁禍首。雖然這並沒有回答完整的問題,但我希望在子線程上有整個responseImage回調。 @timaktimak – achi