2011-01-10 57 views
0

當我開始第二個後臺線程並暫停主線程時,我的第一個響應者是否還在行動?例如,我有一個名爲-flagsChanged的覆蓋方法,並且想知道如果主線程離線,它是否仍然處於活動狀態。可可 - NSThread和第一個響應者

感謝,

凱文

回答

4

不要暫停,因爲the main thread is responsible for handling events和應用程序的UI主線程將成爲irresponsive。如果主線程暫停,它將不處理事件,因此它不會將關鍵事件分派給第一響應者。

如果您認爲需要暫停主線程,則可能需要重新設計程序,以便需要休眠的行爲(如果需要休眠)偏移到輔助線程。如果您需要從輔助線程更新用戶界面,則應使用-performSelectorOnMainThread:withObject:waitUntilDone:

相關問題