2011-01-10 58 views
0

当我开始第二个后台线程并暂停主线程时,我的第一个响应者是否还在行动?例如,我有一个名为-flagsChanged的覆盖方法,并且想知道如果主线程离线,它是否仍然处于活动状态。可可 - NSThread和第一个响应者

感谢,

凯文

回答

4

不要暂停,因为the main thread is responsible for handling events和应用程序的UI主线程将成为irresponsive。如果主线程暂停,它将不处理事件,因此它不会将关键事件分派给第一响应者。

如果您认为需要暂停主线程,则可能需要重新设计程序,以便需要休眠的行为(如果需要休眠)偏移到辅助线程。如果您需要从辅助线程更新用户界面,则应使用-performSelectorOnMainThread:withObject:waitUntilDone:

相关问题