0

我有一个使用核心数据的应用程序。我的应用程序在后台线程中进行一些处理并将输出保存到 Core Data,同时,我的主/UI 线程对 Core Data 执行读取操作。

现在,我试图在我的托管对象中合成一个属性以创建自定义 getter 和 setter(我想自动将长字符串保存在文件中,然后简单地保存路径)。但是,稍后在主线程中读取这些对象时,它们变成了 nil。我尝试删除我的自定义 getter 和 setter 并简单地@dynamic attr替换为@synthesize attr = _attr,但即便如此它也停止了工作。(我清理了我的项目并将其从模拟器和我一直在尝试的设备中删除)。

在我恢复原始语法的那一刻,一切又开始工作了。知道什么可能导致这种行为吗?

4

1 回答 1

0

有关如何正确实现自定义访问器方法的信息,请参阅核心数据编程指南的托管对象访问器方法部分

顺便说一句,通常建议不要覆盖托管对象的访问器方法,因为现有的实现是高度优化的。

于 2014-01-22T10:12:40.720 回答