分析内存泄露

用XCode的Analyze就能分析到哪里有内存泄露

分析内存泄露_第1张图片
1.png
分析内存泄露_第2张图片
2.png

这里提示alertView没被释放,有内存泄露,那我们释放[alertView release];

使用Instruments的leaks工具

分析内存泄露不能把所有的内存泄露查出来,有的内存泄露是在运行时,用户操作时才产生的。那就需要用到Instruments了。

分析内存泄露_第3张图片
1.png

按上面操作,build成功后跳出Instruments工具,选择Leaks选项,这时候寿司程序也运行起来了,选中list中的项,拖动等操作后,工具显示效果如下:

分析内存泄露_第4张图片
2.png

大家可能都能猜到,红色的柱子表示内存泄露了。怎么通过这个工具看到在哪泄露了呢?先在工具栏按下红色的圆形按钮,把工具监视内存的活动停下来。选择Leak,然后点中间十字交叉那,选择Call Tree

分析内存泄露_第5张图片
3.png

这时候左下角的Call Tree的可选项可以选了。选中Invert Call Tree 和Hide System Libraries,显示如下:

分析内存泄露_第6张图片
4.png

这时候内存泄露的具体代码找到了,在右边的红色框框里指定了哪个方法出现了内存泄露。你只要在这些方法上双击,就会跳转到具体的代码

分析内存泄露_第7张图片
5.png

你可能感兴趣的:(分析内存泄露)