在线程之间传递NSManagedObject

时间:2015-09-10 19:32:35

标签: ios core-data

我知道将NSManagedObject从一个线程传递到另一个线程并不是线程安全的,我们必须传递对象ID并通过目标线程中的objectWithID获取对象,但我不希望传递对象ID thread,我可以通过首先在目标上下文中调用objectWithID来获取对象,然后将其传递给目标线程。

let parserContext: NSManagedObjectContext = CoreDataManager.sharedManager().newPrivateManagedObjectContext()
let mainContext: NSManagedObjectContext = CoreDataManager.sharedManager().mainManagedObjectContext()

var object: NSManagedObject?
parserContext.performBlockAndWait {  
  object = mainContext.objectWithID(model.objectID)
}
return object // return to main thread

0 个答案:

没有答案