你真的会使用Xcode instruments查找内存泄漏吗?

很多朋友在面试中都会被问到这个问题,结果答地并不好,这是其实是实操的问题

我今天就和大家简单分享一下怎么使用这个leak检测工具.直接上图:


点击上面Profile ,稍等便可进入Xcode内部自带的instruments工具


点击进去后,点击左上角的红点,可以进行内存检测


这里可以内存多少,有多少对象内存泄漏

点击下边leak checks ,可以看到下边栏有三个选项 leak,Cycles & Roots, Call Tree,分别对应的是内存泄漏,循环引用,调用树. leak点击右边红框类可以进入内存泄漏的代码区域. 

Cycles & Roots 可以看到循环引用的环,我的成环图找不到了,从Detail中是可以分为simple Cycle 简单环(两个对象),还是Complex Cycle复杂环(涉及多个对象引用成环).

Call Tree 就是调用堆栈,如果你的内存泄漏都是第三方框架之中,那么极有可能是你使用第三方不当所致,可以好好看一下调用堆栈,是哪里调用了.红框中区域表示内存的泄漏出现的概率.

下面是我找到的调用堆栈中泄漏代码中方法出处:人头标志是程序员自己写的代码

其实,还是那句话:第三方虽然简单,几句话搞定,但是你不懂原理,还是会使用出问题来.

写代码做事情,还是要知其然还要知其所以然才行.

今天分享就到这里了.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容