如果一個UIViewController運行如下所示的後臺線程操作,並在執行前釋放(讓它從UINavigationController中彈出),後臺線程是否會停止?什麼是確保後臺線程完成的好方法? 我擔心的是,如果用戶在字段中輸入一個值,並且在取消分配視圖控制器之前未更新數據庫,則數據庫將不會更新。包含後臺線程的ViewController的位置
// Doing something on the main thread
dispatch_queue_t myQueue = dispatch_queue_create("My Queue",NULL);
dispatch_async(myQueue, ^{
// Perform long running process
dispatch_async(dispatch_get_main_queue(), ^{
// Update the UI
});
});
// Continue doing other stuff on the
// main thread while process is running.
通過實驗,我確定在釋放對象後後臺線程完成。我的問題是,這是爲什麼? – ChemDev 2013-04-11 03:36:59