我有一些具有一对多父子关系的子类,其中“NSManagedObjects”属性是一个NSOrderedSet。
当我创建一个新的子级时,我在一个子NSManagedObjectContext中这样做。我在子集的索引0处插入子集。
在保存子上下文之前,我观察到父代的子代如下所示:
父级
但是当我继续保存父上下文时,我检查了"updatedObjects“属性,发现父上下文的子上下文的顺序不正确!
父级
注意:这种情况仅发生在新创建的子项上。如果在我创建子上下文时子上下文已经存在,则我能够更改子上下文中它们的顺序,并且它们在有序集合中的位置将相应地保存在父上下文中。
我尝试过打乱父上下文和子上下文的合并策略。现在,它们被配置为默认的错误策略,并且在保存时没有抛出任何错误。
发布于 2019-06-10 00:43:06
我这里的主要问题是与跨线程核心数据的使用有关。
我本以为跨线程滥用的症状会更明显,但这就是它们对我的表现。确保我从所有线程正确访问托管对象上下文修复了我的问题。
https://stackoverflow.com/questions/55881195
复制相似问题