考虑下面的代码:背景MOC的“保存:”有没有影响(但返回YES)
[context performBlock:^{
// add a bunch of objects to context
NSError *error;
if(![context save:&error])
NSLog(@"Couldn't save MOC because of error: %@", error.localizedDescription);
}];
这是一个“存储管理器”里面的类,它有2个MOCS干将:标准.objectContext
和一个.backgroundObjectContext
,这与初始化如下:
backgroundObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
backgroundObjectContext.parentContext = self.objectContext;
我的问题:当我设置context
到self.objectContext
,一切都很好,并将数据保存到.sqlite网络乐。当我将它设置为self.backgroundObjectContext
时,没有数据写入sqlite文件,但返回YES
,没有错误。我试着记录上下文的registeredObjects
,一切都在那里。数据如何不写入sqlite文件?
我一直在使用新的MOC iOS 5 API一段时间,这是我第一次遇到这个问题,所以我很笨。你是如何初始化iOS 5中的后台MOC的?还有什么我可能会在这里失踪?
这是它,谢谢!不知何故,我总是最终保存了父母MOC,这也解释了为什么我从未在这个问题上偶然发现过。 – samvermette 2012-02-13 18:58:45