【发布时间】:2009-08-09 07:24:59
【问题描述】:
我有一个我正在努力追查的错误。我相信正在发生的事情是,我正在从底层数据库中删除一个对象,而另一个托管对象上下文(在另一个线程中)有一个错误,并在它试图完成错误时得到“NSObjectInaccessibleException”。
场景是我有一个视图通过一个上下文访问数据,同时在后台,另一个威胁是从存储中清除过时的记录。后台线程应该只清除视图不需要的对象——这显然不是这种情况,但我无法准确追踪发生了什么。当我看到这个缺陷时,已经为时已晚,这是一个相对罕见的缺陷,主要只发生在现场。
因此我的问题是:在调试 CoreData 时我是否缺少任何技巧 - 我可以在另一个上下文中跟踪对象的生命周期吗? IE。当我删除我的对象时,是否有一种简单的方法可以查看是否有任何其他上下文引用了同一个对象?使用它,我可以构建一些测试代码来检查我的逻辑并找到错误。
【问题讨论】:
-
吉姆,你为什么丢掉我的 iPhone 标签?我正在使用 iPhone,所以我没有 CoreData 绑定。
-
Roger - 我把 iPhone 标签放回去了。但这确实是一个通用的核心数据问题,可能发生在桌面或移动平台上。
-
所以我已经诊断出这是一个 iPhone 问题,尽管可能发生在任何地方。
-
Ben,为什么要删除 iPhone 特定标签并添加 cocoa-touch(iPhone 特定标签)?
标签: core-data