刪除派出塊我有這樣的代碼:如何使用GCD
_myQueue = dispatch_queue_create("com.myapp", DISPATCH_QUEUE_SERIAL);
_mainQueue = dispatch_get_main_queue();
和很多這個塊需要一些秒(或分)
dispatch_async(_myQueue,
^{
if(canRun){
dispatch_async(_mainQueue,^{/* updating interface here */});
// code here
}
});
我的應用程序有一個「停止」按鈕來嘗試停止所有的工作,BOOL「canRun」幫助我執行所有的塊,而不用做任何事情.....但總是必須等待每個塊的完成,直到隊列變爲0. 有沒有立即「清理」隊列的方法是這樣做的嗎? 目標是停止進程並重新開始而不關閉並重新打開應用程序。 該項目在ARC下工作。
爲什麼不使用NSOperationQueue?你只是重新發明了一個優秀的車輪,你已經得到了... – matt
也許這篇文章可能有用嗎? http://stackoverflow.com/questions/9546385/kill-items-in-a-dispatch-async-queue-in-ios – gimpycpu
是的,我發現它很容易更新這樣的界面...... – Mike97