1.用xcode打开自己的工程,按快捷键command+r 运行需要测试的程序。
2.点击xcode导航栏的“show the debugnavigator”,切换到debug模式
然后选中“Memory”,再点击右侧的 “Profile in Instruments”,会自动打开Instruments。
3.这时候会弹出来一个对话框,选择“Transfer”
4.打开后,这时界面如图:
5.然后切换到iOS模拟器,点击那个测试按钮
6.这个时候会弹出一个对话框,
7.“cancel”取消对话框后,多点几次“button”,切换到Instruments会发现 “Leaks”一栏里有几个红色的区块。
这就是内存泄露了。
8.点击暂停,然后点击“Leaks”一栏
9.然后点击“导航栏”切换到“call tree”模式下
10.看到列表里列出了内存泄露的调用逻辑:
11.勾选右边的详细窗口中的“hide system libraries”,隐藏系统函数。
这个时候就可以清楚看到我们自己程序中的方法调用层次结构了。
展开后,可以发现是[ViewController onTestLeakBtn].
12.鼠标双击“[ViewController onTestLeakBtn]”这一行,会跳转到代码。
剩下的工作就是修改代码,然后重复以上步骤。直到没有内存泄露为止。