【发布时间】:2013-02-10 03:06:08
【问题描述】:
我有以下结构
持久存储 父上下文 MOC(在主线程上) 后台线程 MOC (MOC = 托管对象上下文)
所以我在后台做一些工作
// Create a background context.
NSManagedObjectContext* context = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];
context.parentContext = self.document.managedObjectContext;
// Start using it, but in its own thread!
[context performBlock:^
{...
我从表中获取一些对象并在上下文中删除其中一些。
NSFetchRequest* request = [NSFetchRequest fetchRequestWithEntityName:@"User"];
NSArray* userQueryResults = [context executeFetchRequest:request error:&error];
for (int i = 0; i < userQueryResults.count; i++)
{
if(someCondition)
[context deleteObject:[userQueryResults objectAtIndex:bla];
}
现在,假设我只想将剩余的用户重新提取到一个数组中......
它会重新获取所有原来存在的用户还是只重新获取未删除的用户?
如果我要保存我的“上下文”,会有什么不同吗?
基本上,我试图了解嵌套上下文中获取和保存之间的区别...
谢谢
【问题讨论】:
标签: iphone ios objective-c core-data