ios - 核心数据:更新子上下文

标签 ios core-data ios8

如果我有一个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/

相关文章:

iOS 8 UITableView 单元格在选择时会跳转

iOS8 EXC_BAD_ACCESS 执行时 [[NSString alloc] initWithFormat :format arguments:argList]

iphone - 使用AppMobi和ASP.NET MVC是否违反Apples TOS

ios - CGContextRestoreGState : invalid context 0x0 xcode error

ios - 存储 Trivia 游戏数据的最佳方式?

ios - 删除所有核心数据记录不设置managedContext中的hasChanges

objective-c - Xcode 6 和 Embedded Frameworks 仅在 iOS8 中支持

ios - 如何清除实体并在使用神奇记录添加新记录后

ios - iOS 中的 Google API OVER_QUERY_LIMIT 问题

ios - 检索 NSManagedObjects 问题(核心数据)