在使用NSManagedObjectContext的核心数据中:如果我有父上下文,当我保存子上下文时,我是否还需要保存父上下文?
即
NSManagedObjectContext *childContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
childContext.parentContext = [self defaultPrivateQueueContext];
[childContext performBlock:^{
//do stuff async
[childContext save:&error];
[self.defaultPrivateQueueContext performBlock:^{
[self.defaultPrivateQueueContext save:&error];
}];
}];
答案 0 :(得分:1)
保存子项将更新子上下文中对象的状态,并将保存所提交的更改推送到父项。如果没有在父上下文中保存,父级将不会在持久性存储中持久保存这些更改(假设父级是根上下文)。
您可以看到此here的插图。