iOS 内存泄漏排查以及处理

使用Xcode7的Instruments检测解决iOS内存泄露

 
文/笨笨的糯糯(简书作者)
原文链接:http://www.jianshu.com/p/0837331875f0

第一步:打开Xcode7自带的Instruments


 

 



或者:

 


 

按上面操作,build成功后跳出Instruments工具,选择Leaks选项

选择之后界面如下图:

 


 

到这里之后,我们前期的准备工作做完啦,下面开始正式的测试!

1.选中Xcode先把程序(command + R)运行起来

2.再选中Xcode,按快捷键(command + control + i)运行起来,此时Leaks已经跑起来了

3.由于Leaks是动态监测,所以我们需要手动操作APP,一边操作,一边观察Leaks的变化,当出现红色叉时,就监测到了内存泄露,点击右上角的第二个,进行暂停检测(也可继续检测,当多个时暂停,一次处理了多个).如图所示:

 


 

4.下面就是定位修改了,此时选中有红色柱子的Leaks,下面有个"田"字方格,点开,选中Call Tree

显示如下图界面

 


 

5.下面就是最关键的一步,在这个界面的右下角有若干选框,选中Invert Call Tree 和Hide System Libraries,(红圈范围内)显示如下:

 


 

到这里就算基本完成啦,这里显示的就是内存泄露代码部分,那么现在还差一步:定位!

6.选中显示的若干条中的一条,双击,会自动跳到内存泄露代码处,如图所示

 


 

7.找到了内存泄露的地方,那么我们就可以修改即可

posted @ 2016-11-03 12:21  徐家汇  阅读(1099)  评论(0编辑  收藏  举报