【发布时间】:2011-12-15 13:01:36
【问题描述】:
在我的 iPhone 应用程序中,主线程创建了一个后台线程,该线程做了很多工作,在某些情况下需要询问用户他们的决定。当用户被问到问题时,后台线程应该停止工作,只有在用户回答问题后才能继续工作。
最好的方法是什么?
附言
我试过 iPhone Developer's Cookbook 中的 ModalAlert,据说可以解决问题,但我没有成功。似乎 CFRunLoopRun(应该停止线程执行)只是没有停止后台线程。
我有这样的代码
+(void) main
{
[NSThread detachNewThreadSelector:@selector(startSync) toTarget:self withObject:nil];
}
+(void) startSync
{
CFRunLoopRun();
NSLog("Hi");
}
并且NSLog 在syncStart 线程启动后立即执行。很奇怪。
【问题讨论】:
标签: iphone background alert background-thread cfrunloop