我正在使用Core Data将大量数据导入我的应用程序,如下所示:
for (int i = 0; i < [items count]; i++)
{
Client *entity = (Client*) [NSEntityDescription insertNewObjectForEntityForName:@"Client" inManagedObjectContext:managedObjectContext];
[entity setCompanyName:[[items objectAtIndex:i] objectForKey:@"CompanyName"]];
//* bunch of other fields
NSError *error;
if (![managedObjectContext save:&error]) {
// Handle the error.
NSLog(@"%@",error);
}
}
我需要在这里发布什么?我应该做[实体发布]吗?
答案 0 :(得分:4)
正如文件所说:
<强> insertNewObjectForEntityForName:inManagedObjectContext:强>
尽管方法名称中存在“new”一词,但在引用计数环境中,您不负责释放返回的对象。
所以答案是否定的,你不需要发布entity
变量。
注意这是标准。使用便捷方法时,按照约定自动释放返回的实例,因此您不需要关心它们,除非您明确地保留它们,当然。