我在这里遇到了一个奇怪的崩溃,我认为它是由外部库引起的,但是我无法跟踪堆栈跟踪,并且不确定如何使用 Xcode 的内存探索工具。
这是我在控制台崩溃时得到的内容:
*** Terminating app due to uncaught exception 'NSGenericException',
reason: '*** Collection <__NSArrayM: 0x208c5d00> was mutated while being enumerated.'
*** First throw call stack:
(0x37ae32a3 0x35e0d97f 0x37ae2d85 0x7c57d 0x728b1 0x6b865 0x34d9f11f 0x34d9e4b7 0x34da31bd 0x37ab6f3b 0x37a29ebd 0x37a29d49 0x368602eb 0x38ffb2f9 0x643d1 0x64358)
libc++abi.dylib: terminate called throwing an exception
我正在使用 MKNetworkKits UIImageViewsetImageFromURL
添加来向 UITableViewCell imageview(自定义 imageview 对象,而不是 UITableViewCell 附带的默认 imageview)提供图像。当我删除此setImageFromURL
呼叫时,我没有遇到任何崩溃。
我尝试在命令行上使用dwarfdump
和atos
,但上述崩溃中的地址都没有链接到任何特定的函数地址。
我已经搜索了执行枚举循环的地方forin
,但似乎找不到任何真正改变数据的地方。显然我忽略了一些东西..
任何建议/提示/帮助都将非常感激..
编辑:到目前为止感谢您的评论。关于如何利用内存地址追踪实际代码行的任何提示都会有所帮助 - Xcode 可以做一些 Visual Studio 调试器可以做的事情,关于代码和内存检查吗?