我的应用程序使用类ShoppingItem
的自定义对象。此类采用NSCoding
,以便可以对其进行存档。这可以正常工作数周。
但是,我现在遇到的情况是,ShoppingItem
的编码遇到错误为Thread 18: EXC_BAD_ACCESS (code=1, address=0x69f4b533d438)
的异常断点。
这是堆栈跟踪:
我不明白为什么会引发异常:
显然,NSKeyedArchiver
使用_encodeObject
编码了前2个属性,并且在编码第3个属性Set<ShoppingLocation>
时崩溃了。但是它没有开始对这个集合的对象进行编码,因为否则将在ShoppingLocation
的编码函数中引发异常。相反,在功能Set<ShoppingLocation>
中对__CFStringEncodeByteStream
进行编码失败。 According to the code,此函数从CFString
支持创建字节流。
我的问题是:
飞机坠毁的原因可能是什么?我该如何调试情况?