Coredata和Mogenerator,coredata标志并发问题EXC_BAD_INSTRUCTION

时间:2017-03-27 21:29:32

标签: ios objective-c core-data

我将Core Data并发标志添加到我的项目中。我也在使用Mogenerator。当我试图获得具有mogens getters的变量值时,它会遇到一个断点。这是我的功能:

- (BOOL) existsOnServer{
    id someID = self.id; // breakpoint hit here
    return (!someID || someID == (id)[NSNull null])?NO:YES;
}

此函数存在于我的主要自定义对象类中,所有内容都从中继承。有谁知道为什么会抛出这个错误?

1 个答案:

答案 0 :(得分:0)

问题是我在一个代码块中调用了上面的方法,这个代码块是在一个不同于main的线程上执行的,这是我假设'self'被创建的地方。

我发现我可以使用托管对象上下文managedObjectContext参数。这是创建对象的上下文,如果上下文不再存在,则仅为nil。通过在此上下文中使用perform块,我可以从对象获取所需的数据。