您当前的位置: 首页 > 

CoreData中访问托管对象的NSSet关系属性导致崩溃的解决

发布时间:2018-12-31 19:56:35 ,浏览量:0

本文介绍了再少数情况下,当访问CoreData托管对象中的NSSet关系属性引起App崩溃的现象以及解决.

现象

在访问托管对象的traces关系属性时,App崩溃,提示:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSMutableSet unionSet:]: set argument is not an NSSet'

traces的类型是NSSet.

实际的代码为:

if let ary = traces?.allObjects as? [HabitTrace]{
    return ary
}
return []

我们再回溯一下崩溃时堆栈里值得注意的的信息:

0   CoreFoundation                      	0x00000001105611bb __exceptionPreprocess + 331
	1   libobjc.A.dylib                     0x000000010f49a735 objc_exception_throw + 48
	2   CoreFoundation                      0x00000001104ad4ec _CFThrowFormattedException + 194
	3   CoreFoundation                      0x00000001105499f5 -[NSMutableSet unionSet:] + 581
	4   CoreData                            0x000000010ff1f3c6 -[_NSFaultingMutableSet willR
关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0465s