【发布时间】:2016-03-03 08:28:14
【问题描述】:
我有一个清理例程,它清除了一堆托管对象,形成一些似乎触发很多 CoreData 错误的原因。
NSFetchRequest *request = [[NSFetchRequest alloc] initWithEntityName:@"LogEvent"];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"id" ascending:YES];
[request setSortDescriptors:@[sortDescriptor]];
[request setFetchLimit:numberToPurge];
NSArray *events = [context executeFetchRequest:request error:nil];
for (LogEvent *event in events) {
[context deleteObject:event];
}
[context save:nil];
这就是我在仪器中看到的。
【问题讨论】:
-
我不知道为什么,但您可以使用 propertiesToFetch 空数组和 returnAsFaults NO 进行优化。
标签: ios objective-c core-data