我有一個完成處理程序的功能,可以從YouTube的API下載視頻。讓我的功能在獲取信息的同時阻止功能
第一次運行時,效果很好。在後續運行中,由於視頻存儲在設備中,並且在更新視頻陣列之前顯示,我希望用戶能夠在更新(如果需要)時與表進行交互。但是,在下載信息時,與桌面或應用程序的交互被阻止。
我想這與Grand Central Dispatch有關,但我不知道如何使用它。
Networking().getPlaylists() { (result: String) ->() in
self.activityView.removeFromSuperview()
print("should reload data")
self.tableView.reloadData()
}
}
有人能給我一些指點嗎?
如果在查詢運行時UI被阻塞,問題無疑將停留在「Network」實現中。你應該分享它如何執行請求。但是如果你在'Networking'內使用'NSURLSession'(並且不要做任何象信號量或者等待操作來完成),它確實不應該阻塞。 – Rob