Instruments 检测内存泄漏

目的:检测项目内存泄漏、定位内存泄露代码。

工具:Instruments-->Leaks

⚠️分析内存泄露不能把所有的内存泄露查出来,有的内存泄露是在运行时,用户操作时才产生的。


一、两种开启内存检测的方式

1.1)、Product -> Profile-->Instruments

Instruments 检测内存泄漏_第1张图片

1.2)、Xcode-->OpenDeveloper-->Instruments

Instruments 检测内存泄漏_第2张图片

1.3)、开启截图

Instruments 检测内存泄漏_第3张图片

二、开始检测

Instruments 检测内存泄漏_第4张图片

2.1)、选择检测的项目

2.2)、选择设备

2.3)、开始检测(在此之前需要将程序运行起来)


三、配置及运行

Instruments 检测内存泄漏_第5张图片

3.1)、点击出现的叉号(内存泄漏)。

3.2)、Details-->选择Call Tree。

3.3)、点击Call Tree。(此处指的是Xcode8以上,  Xcode7在右下角)

3.4)、选择Invert CallTree  &&  Hide System Libraries 。

3.5)、双击5,即可进入内存泄漏相关代码。

四、相关知识(复制)

4.1)、内存溢出 out of memory

指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。

4.2)、内存泄露 memory leak

指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。

你可能感兴趣的:(Instruments 检测内存泄漏)