当前位置:  开发笔记 > 数据库 > 正文

核心数据中的mach_msg_trap

如何解决《核心数据中的mach_msg_trap》经验,为你挑选了1个好方法。

mach_msg_trap错误是什么意思?我正在开发一个核心数据应用程序.当ManagedObjectContext第二次"使用"另一个线程时,我收到此错误.我是一个生产者消费者类型的线程系统.生产者线程和使用者线程使用相同的底层sqlite db,但是不同的managedobjectContext在不同的线程上使用.但我希望生产者thead检查新数据,如果有的话,我希望它更新我的managedObjectContext.但第二次运行应用程序崩溃给出上述结果.

请帮忙...



1> Peter Hosey..:

mach_msg_trap是一个功能,而不是一个错误.具体来说,它是运行循环调用等待某些东西到达的函数.该功能是您的应用程序可以等待某些事情发生(I/O完成,计时器触发,发布通知等)而不使用CPU时间.

但我希望生产者thead检查新数据,如果有的话,我希望它更新我的managedObjectContext.

我不是Core Data的人,所以我不知道具体的解决方案,但我知道你永远不会向另一个线程的MOC发送消息.你有权使用单独的MOC,而你有这些MOC是有原因的.

我建议你编辑你的问题,以澄清你正在询问如何发信号通知一个托管对象上下文另一个托管对象上下文已经改变了他们两个共享的数据存储.你的问题实际上与此无关mach_msg_trap.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有