2012-08-16 83 views
0

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

我结束了这样的代码:

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

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

这是我在使用UIActivityIndi​​catorView时应该期待的时间差异吗?

或者我是否因为对UIActivityIndi​​catorView和detachNewThreadSelector缺乏经验而犯了一些初学者错误?

感谢您的任何信息。

回答

0

我刚刚发现,添加此行的一个方法theWorkToBeDone的开头:

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

这一个底:

[pool release]; 

解决我的问题。