如何解决我在控制台中收到的_NSCoreDataOptimisticLockingException消息?或调试它?
我正在使用后台线程来更新核心数据上下文,我正在将主线程上的上下文与主线程对象合并,但我正在查看这些控制台消息,我无法看到它们来自哪里。
objc[58487]: EXCEPTIONS: catch(_NSCoreDataOptimisticLockingException)
objc[58487]: EXCEPTIONS: unwinding through frame [ip=0x2235ec7 sp=0xb08e8a10] for exception 0x3dd42950
objc[58487]: EXCEPTIONS: unwinding through frame [ip=0x22622a6 sp=0xb08e8ad0] for exception 0x3dd42950
objc[58487]: EXCEPTIONS: handling exception 0x3dd42950 at 0x226234a
objc[58487]: EXCEPTIONS: finishing handler
@jonusx的第一个答案谈到了使用嵌套上下文来处理这种情况,但是在针对iOS 4 SDK时可以做些什么来调试这些异常呢? 提前谢谢。
答案 0 :(得分:0)
该错误来自无法从两个上下文正确合并的更改。你究竟在做什么背景?您应该尝试使用新的iOS 5嵌套上下文进行后台保存。父级可以位于专用队列中,子级(后台上下文)位于线程限制队列中。孩子的保存被推送到主上下文。在后台完成后,只需保存父上下文以将更改保留到磁盘。