后台线程崩溃(NSAutoreleasePool)但不在主线程上崩溃

时间:2011-07-30 14:16:26

标签: iphone nsautoreleasepool

如果我用以下方法调用方法:

    [self checkThenWriteToMasterArray];

然后一切正常,(但当然锁屏)。但如果我打电话

    [self performSelectorInBackground:@selector(checkThenWriteToMasterArray) withObject:nil];

程序崩溃了。方法本身设置如下:

-(void) checkThenWriteToMasterArray {

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

// do stuff, INCLUDING calling other (sub)methods

[pool release]

}

当我从主线程调用[self checkThenWriteToMasterArray]时,无论我是否已分配NSAutoreleasePool,程序都能正常工作。调用的(子)方法没有自己的NSAutoreleasePool。

老实说,编译器错误消息太混乱了,我还没有找到一种方法来调试。

0 个答案:

没有答案