一、情况
1,Xcode中有时候奔溃会提示类似这样的提示 :
*** -[CAShapeLayer retain]: message sent to deallocated instance 0x27368d10
2,有时候我们会毫无头绪排查,这时候如果我们想要获取更多详细的信息那么可以用终端里的malloc_history命令来解决。
二、步骤
1,使用模拟器运行项目,并且记住项目名比如:zhihuiyun
2,记录崩溃的内存地址比如:0x27659700
3,打开活动监视器,找出你项目的pid,并且记录下来,比如8813
4,打开你的 终端 terminal 。
5,输入命令:sudo malloc_history 8813 0x27659700
6,获取内存对应错误信息,这时候错误信息显示比较乱,我们可以简单格式化一下,用文本编辑:
8813:为进程pid 0x27659700:为崩溃内存地址
7,这个就是方法堆栈调用的顺序,可以根具堆栈信息,结合错误提示,来进一步解决问题。
message sent to deallocated instance 崩溃 解决方案
原文地址:http://pinwei.blog.51cto.com/5452359/1747697