目标C大师,我有一个简单的问题要问:
我现在有两个不同的线程在后台运行,每个线程都分配了NSManagedObjectContext
。
现在,问题是:两个NSManagedObjectContext
同时使用公共/共享NSPersistentStoreCoordinator
保存[保留到磁盘]是否安全?
换句话说,两个不同的后台线程可以同时持续存储到磁盘吗?
非常感谢。
答案 0 :(得分:1)
NSPersistentStoreCoordinator
不是线程安全的,但你不必担心它。 NSManagedObjectContext
知道如何在使用时锁定商店(在保存期间)。
因此,拥有共享同一商店的多个上下文是正确的。这是App Store Documentation建议的方法:
为每个线程创建一个单独的托管对象上下文并共享一个 单一持久性商店协调员。
希望有所帮助。