我首次在iPhone应用程序中使用UIActivityIndicatorView,以便让用户知道某些进程正在进行中。 为此,我使用detachNewThreadSelector方法(也是第一次)。
我最终得到这样的代码:
[myActivityIndicator startAnimating];
[NSThread detachNewThreadSelector:@selector(theWorkToBeDone:) toTarget:self withObject:myObject];
问题在于我在申请时间。当我使用上面的代码时,执行任务所需的时间比不使用UIActivityIndicatorView和detachNewThreadSelector需要大约5倍。 (在这种情况下,用户仍然等待,但时间更短)。
使用UIActivityIndicatorView时,我在预期时间上的差异是什么?
或者由于我对UIActivityIndicatorView和detachNewThreadSelector都缺乏经验而我犯了一些初学者错误?
感谢您提供任何信息。
答案 0 :(得分:0)
我刚刚发现将此行添加到workToBeDone方法的开头:
NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
最后这一个:
[pool release];
解决了我的问题。