我使用来自两个线程的CoreData
,每个线程使用单独的NSManagedObjectContext
,并使用this guide中的共享NSPersistentStoreCoordinator
。{{3}}。我的目标是只提交一个线程在从这个线程调用[NSManagedObjectContext save]
时所做的更改。所以在以下场景中:
th1: add obj1 // don't save
th2: add obj2
th2: save
quit app
open app once again
我只想保存obj2
。可能吗?如果是这样,我该怎么做?
答案 0 :(得分:1)
是的,NSManagedObjectContext
知道线程最初运行他,performBlock
是检索此信息的方法。
[myManagedObjectContext performBlock:^{
//do your stuff here in managedObjectContext thread
}];
请记住,这只是一个块。
所以,如果你喜欢你说过两个ManagedObjectContext你应该没有管理它的问题,因为performBlock
只处理上下文而不是PS。