0
在新線程結束時調用主線程將結果應用於UI是否很常見?我們不能應用「分離」線程的結果嗎?例如,在示例代碼ListAdder,我們使用:performElementInBackground之後調用performSelectorOnMainThread?
[self performSelectorInBackground:@selector(threadRecalculateNumbers:) withObject:immutableNumbers];
,並在功能上,我們再回到主線:
[self performSelectorOnMainThread:@selector(threadRecalculateDone:) withObject:totalStr waitUntilDone:NO];
和功能:
- (void)threadRecalculateDone:(NSString *)result
{
// The user interface is adjusted by a KVO observer on recalculating.
self.formattedTotal = result;
self.recalculating = NO;
}
謝謝
Paul
(這真的很難看出你的問題是什麼......) – Infinite
「我們不能把我們的結果應用到」分離「線程嗎?」不,用戶界面不能從主線程以外的地方更新。 UIKit不是線程安全的。 – albertamg
@albertamg:感謝albert,所以我們在創建分離線程後總是調用主線程是有道理的。你能作爲一個職位做出答案嗎?非常感謝 – Paul