Похоже, вы не синхронизируете обновления обратно в NSManagedObjectController основного потока. Попробуйте добавить метод, подобный этому:
- (void)managedContextDidSave:(NSNotification *)n {
if ([NSThread isMainThread]) {
NSManagedObjectContext *context = /* Get context for main thread */;
[context mergeChangesFromContextDidSaveNotification:n];
} else {
[self performSelectorOnMainThread:@selector(managedContextDidSave:) withObject:n waitUntilDone:YES];
}
}
Затем подключите это к NSManagedObjectContextDidSaveNotification
:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(managedContextDidSave:) name:NSManagedObjectContextDidSaveNotification object:nil];