0
我有多线程核心数据设置 - 它工作得很好。在这个设置中,我有一系列的功能来抓取所需的数据等等。除了这个导致一个小漏洞的东西之外,它们都工作得很好 - 但它增加得相当快,并且使应用程序崩溃。iOS核心数据 - 意外内存泄漏
- (id)getRecordOfType:(NSString *)type WithCode:(NSString *)codeString{
id returnObj = nil;
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:type inManagedObjectContext:self.managedObjectContext]];
NSPredicate *categoryPred = [NSPredicate predicateWithFormat:[@"code='" stringByAppendingFormat:@"%@'", codeString]];
[request setPredicate:categoryPred];
categoryPred = nil;
if (![request entity]) {
[request release]; request = nil;
return nil;
}
NSError *error;
NSMutableArray *results = [[self.managedObjectContext executeFetchRequest:request error:&error] mutableCopy];
for (id tmpObj in results) {
if([(NSString *)[tmpObj code] isEqualToString:codeString])
returnObj = tmpObj;
break;
}
[results release];
[request release];
return returnObj;
}
如果任何人都可以在这里摆脱一些光它将不胜感激。
由于提前,
迈克尔
感谢您的反馈 - 我发现了泄漏 - 我错误地读了仪器并看到错误的功能:P – 2011-05-26 15:09:07
嘿。迈克尔,出于好奇:你对“释放”事物有什么看法?你回来后立即'保留'returnObj'还是我错了? – sergio 2011-05-26 15:10:51
我不保留returnObj - 它被使用的函数使用: – 2011-05-26 16:53:08