iOS专项测试--instrument的Leaks / Allocations检测内存的使用

Leaks

先看看 Leaks,从苹果的开发者文档里可以看到,一个 app 的内存分三类:

Leaked memory: Memory unreferenced by your application that cannot be used again or freed (also detectable by using the Leaks instrument).

Abandoned memory: Memory still referenced by your application that has no useful purpose.

Cached memory: Memory still referenced by your application that might be used again for better performance.

其中 Leaked memory 和 Abandoned memory 都属于应该释放而没释放的内存,都是内存泄露,而 Leaks 工具只负责检测 Leaked memory,而不管 Abandoned memory。在 MRC 时代 Leaked memory 很常见,因为很容易忘了调用 release,但在 ARC 时代更常见的内存泄露是循环引用导致的 Abandoned memory,Leaks 工具查不出这类内存泄露,应用有限。

1.通过Xcode-profile打开instrument

iOS专项测试--instrument的Leaks / Allocations检测内存的使用_第1张图片
1

2.选择真机运行

iOS专项测试--instrument的Leaks / Allocations检测内存的使用_第2张图片
3

3.选择 Allocations -- Generations 检测每次每次内存增长多少

iOS专项测试--instrument的Leaks / Allocations检测内存的使用_第3张图片

4. 使用leaks查看的内存泄漏的具体代码

你可能感兴趣的:(iOS专项测试--instrument的Leaks / Allocations检测内存的使用)