我具有父子关系上下文的结构。
父级是主要上下文,子级是私有并发上下文。
当孩子进行一些更改并执行save
时。主上下文(对象)接收通知并执行NSManagedObjectContextDidSave
。
问题是我想知道此操作是否线程安全?因为即使包裹在里面也不是自己的上下文/线程(在mainContext.performBlock
内),所以另一个线程(例如子并发线程)可以进行提取。当这两个动作在正确的时间发生时,会破坏数据吗?
答案 0 :(得分:1)
performBlock:在上下文队列上同步执行块。并且在保存多个记录的情况下也不安全。
performBlockAndWait:在上下文队列中同步执行块。可以安全地称为子例程。