涉及Coredata跨线程NSManagedObject查询

如果是查询的话,因为 NSManagedObject 也不能跨线程访问,子线程处理好的数组在UI显示时需要做一个小的处理。在主线程中获取到的NSManagedObject对象data为Fault,这时主线程再通过 objectWithID 恢复对象的方法:

ActivityMonitorDateData *activityData = [data objectForKey:ActivityKEY];
AppDelegate *delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
ActivityMonitorDateData *activityNewData = (ActivityMonitorDateData *)[delegate.managedObjectContext objectWithID:activityData.objectID];

此时,再去使用activityNewData进行UI显示。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,242评论 25 708
  • 1.Difference between shallow copy and deep copy? 浅复制和深复制的...
    用心在飞阅读 1,024评论 0 9
  • 昨天和同事一起吃饭,六个人当中竟然就有两个做了胆囊切除手术,笑称“无胆人士”。其中一位说自己手术之后瘦了10公斤,...
    精彩遇见阅读 4,331评论 0 0
  • 每次回家,迎接自己的那个女人,总是满脸的笑容。而看到家里总是被她收拾得干干净净的,心里有种说不出来的感觉。...
    鲁廉羽昕阅读 239评论 0 1
  • 这到算法题好像经常出现在面试题集锦里面,反正我是看见它好多次了。不用加法实现两个数的和,我们可以首先想到位运算,那...
    Neulana阅读 2,745评论 2 6