UIActivityIndi​​catorView / detachNewThreadSelector

时间:2012-08-16 07:23:43

标签: uiactivityindicatorview

我首次在iPhone应用程序中使用UIActivityIndi​​catorView,以便让用户知道某些进程正在进行中。 为此,我使用detachNewThreadSelector方法(也是第一次)。

我最终得到这样的代码:

[myActivityIndicator startAnimating];
[NSThread detachNewThreadSelector:@selector(theWorkToBeDone:) toTarget:self withObject:myObject];

问题在于我在申请时间。当我使用上面的代码时,执行任务所需的时间比不使用UIActivityIndi​​catorView和detachNewThreadSelector需要大约5倍。 (在这种情况下,用户仍然等待,但时间更短)。

使用UIActivityIndi​​catorView时,我在预期时间上的差异是什么?

或者由于我对UIActivityIndi​​catorView和detachNewThreadSelector都缺乏经验而我犯了一些初学者错误?

感谢您提供任何信息。

1 个答案:

答案 0 :(得分:0)

我刚刚发现将此行添加到workToBeDone方法的开头:

NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];

最后这一个:

[pool release];

解决了我的问题。