如果我有一个NSManagedObjectContext和两个子节点,一个用于从Web服务(A)进行后台更新,另一个用于UI线程(B)中的操作,问题是: 一旦使用新信息更新后台上下文(A)并将其保存到父上下文,NSManagedObjectContext B如何通知父管理对象上下文中的更改?
由于
答案 0 :(得分:5)
如果我理解正确,你可以从你的上下文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];
}];
}
}];