部分保存managedObjectContext

我有3个事务已经在NSManagedObjectContextABC 。 他们按相同的顺序执行/添加到上下文中。

我怎样才能保存第一个A事务,但保持未保存的BC上下文。

insert Ainsert Binsert Ccommit A ,..

不幸的是NSManagedObjectContext不能commit A ,而是保存所有的事务。

也许我想念一些东西。 你的目标是保存一个特定的对象,比如说A ,只有当A的数据已经被提交给服务器。 我错了吗?

如果是这样的话,你可以利用NSOperation类。 将你的工作(保存到持久性存储或对服务器的提交) NSOperationNSOperation子类中。 在它们之间添加依赖关系。

只是一个例子。

 let serverOperation : NSOperation = ... let localOperation : NSOperation = ... localOperation.addDependency(serverOperation) let operationQueue = NSOperationQueue.mainQueue() operationQueue.addOperations([serverOperation, localOperation], waitUntilFinished: false) 

另一种方式可能是保存和提交操作被视为一个独特的事务。

让我知道,如果不清楚。