部分保存managedObjectContext
我有3个事务已经在NSManagedObjectContext
: A
, B
, C
。 他们按相同的顺序执行/添加到上下文中。
我怎样才能保存第一个A
事务,但保持未保存的B
, C
上下文。
insert A
, insert B
, insert C
, commit A
,..
不幸的是NSManagedObjectContext
不能commit A
,而是保存所有的事务。
也许我想念一些东西。 你的目标是保存一个特定的对象,比如说A
,只有当A
的数据已经被提交给服务器。 我错了吗?
如果是这样的话,你可以利用NSOperation
类。 将你的工作(保存到持久性存储或对服务器的提交) NSOperation
到NSOperation
子类中。 在它们之间添加依赖关系。
只是一个例子。
let serverOperation : NSOperation = ... let localOperation : NSOperation = ... localOperation.addDependency(serverOperation) let operationQueue = NSOperationQueue.mainQueue() operationQueue.addOperations([serverOperation, localOperation], waitUntilFinished: false)
另一种方式可能是保存和提交操作被视为一个独特的事务。
让我知道,如果不清楚。