如果我有一个NSManagedObjectContext和它的两个子代,一个用于从Web服务在后台更新(A),另一个用于UI线程(B)中的操作,则问题是:
一旦使用新信息更新了后台上下文(A)并将其保存到父上下文中,则如何通知NSManagedObjectContext B有关父托管对象上下文中的更改?
谢谢
最佳答案
如果我理解正确,则可以从上下文B中观察DidSaveNotification。像这样:
self.observer = [[NSNotificationCenter defaultCenter] addObserverForName:NSManagedObjectContextDidSaveNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
NSManagedObjectContext *notMoc = [note object];
if (![weakSelf.managedObjectContext isEqual:notMoc]) {
[weakSelf.managedObjectContext performBlock:^{
[weakSelf.managedObjectContext mergeChangesFromContextDidSaveNotification:note];
}];
}
}];
关于ios - 核心数据:更新子上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28011237/