引言


我们在实际开发过程中,经常会不小心造成循环引用问题,从而造成内存泄漏问题,那么我们该如何检测我们工程那个位置存在内存泄漏问题呢?这就需要用到Xcode自带的内存泄漏检测工具-Leaks.

内存泄漏检测演示


下面我们就直接进入主题,首先,我们需要先创建一个内存泄漏问题,我们创建两个数组,然后让他们两个相互持有,这样就会出现内存泄漏问题了,代码如下所示.整体的代码是在ViewController中的viewDidLoad这个方法实现的.

- (void)viewDidLoad {[super viewDidLoad];NSMutableArray *firstArray=[[NSMutableArray alloc]init];NSMutableArray *secondArray=[[NSMutableArray alloc]init];[firstArray addObject:secondArray];[secondArray addObject:firstArray];
}

然后,我们打开Xcode菜单栏中的Product选项中的Profile选项,也可以使用快捷键** command + I **,图中因为正在截图,所以快捷键发生了变化.

然后在Instruments菜单中找到Leaks,如下图所示.

打开Leaks工具之后,我们首先在左上角选择我们需要检测的程序,这里我们可以检测当前Mac上任意一个开启的程序,这里我们选择模拟器的Demo程序,如下所示.

工具默认的是Allocations选项,然后我们需要选择Leaks选项,点击红色⭕️按钮,启动检测程序.

然后我们运行完成之后,就会得到下面的页面,我们就可以通过页面的信息找到我们内存泄漏的具体位置了.

尾声


跟大家透个底,其实网上关于Leaks工具的博客比较常见,骚栋只是做一下使用记录,方便以后使用.不过如果喜欢这篇文章欢迎点赞,谢了~~

![](https://img-blog.csdnimg.cn/img_convert/1cc773b3510614b54c92ffc3dc40d24a.gif)

iOS开发之内存泄漏检测工具-Leaks相关推荐

  1. MLeaksFinder :腾讯开源的 iOS 内存泄漏检测工具

    一.工具简介 MLeaksFinder :腾讯开源的 iOS 内存泄漏检测工具 工具优势:在日常开发调试或测试业务逻辑过程中,可以自动发现并警告内存泄漏.暂时没有发现误报:基本上报了leak的  进去 ...

  2. 内存泄漏检测工具(转载)

    内存泄漏检测工具2007年08月08日 1.     ccmalloc-Linux和Solaris下对C和C++程序的简单的使用内存泄漏和malloc调试库. 2.     Dmalloc-Debug ...

  3. C++内存泄漏检测工具

    C++内存泄漏检测工具 1.VC自带的CRT:_CrtCheckMemory   调试器和 CRT 调试堆函数 1.1用法: /************************************ ...

  4. C/C++的内存泄漏检测工具Valgrind memcheck的使用经历

    Linux下的Valgrind真是利器啊(不知道Valgrind的请自觉查看参考文献(1)(2)),帮我找出了不少C++中的内存管理错误,前一阵子还在纠结为什么VS 2013下运行良好的程序到了Lin ...

  5. Android内存泄漏检测工具使用手册

    Android内存泄漏检测工具使用手册 前言 LeakCanary 在Android中接入LeakCanary LeakCanary内存泄漏分析 内存泄漏上报到服务端 Shark Shark分析当前应 ...

  6. C++ 内存泄漏检测工具valgrind简单使用

    C++ 内存泄漏检测工具valgrind简单使用 目录 C++ 内存泄漏检测工具valgrind简单使用 valgrind安装 valgrind测试内存泄漏 valgrind安装 通过软件商店下载: ...

  7. 自制内存泄漏检测工具

    之前偶然发现,CRT检测内存泄漏的代码其实并不是特别复杂,就是用一个链表记录所有申请出来的内存,然后在程序退出时检测还有哪些内存未被释放.于是有了自制内存泄漏检测工具的想法.基本上是参考这篇文章和CR ...

  8. Linux内存泄漏检测工具 Valgrind使用

    一 .valgrind简介 最近在Linux下程序碰到了内存泄漏的问题,所以在网上找了找Linux下的内存泄漏检测工具,找到了Valgrind这款功能很强大的内存调试.内存泄漏检测以及性能分析.检测线 ...

  9. Linux C/C++ 内存泄漏检测工具:Valgrind - 张宴的博客 - Web系统架构与底层研发

    Linux C/C++ 内存泄漏检测工具:Valgrind - 张宴的博客 - Web系统架构与底层研发 Linux C/C++ 内存泄漏检测工具:Valgrind - 张宴的博客 - Web系统架构 ...

最新文章

  1. 【深度学习】基于PyTorch的模型训练实用教程之数据处理
  2. python安装pip-Python2.7.5安装pip9.0.1
  3. C++ 中的集合与字典
  4. taro 小程序转h5之后报错_记录微信小程序转Taro中遇到的问题
  5. sdut 2152:Balloons(第一届山东省省赛原题,DFS搜索)
  6. clion中文乱码_CLion 遇到乱码的解决办法
  7. View Agent Direct-Connection安装后,连接黑屏
  8. 【原创】(十二)Linux内存管理之vmap与vmalloc
  9. rtt面向对象oopc——1.rtt定义的这些类有什么用?
  10. 真正的mybatiesPlus一键生成模板(根据对象增删改查分页的controller完善)详
  11. ERROR: Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defi
  12. linux 中select()函数的使用
  13. (转)查理·芒格:光靠已有的知识,你走不了多远
  14. python多级目录import_Python之路---包和模块
  15. 霍兰德SI型如何选专业?霍兰德职业兴趣测试
  16. 箭头小三角(向上或向下、两条边)--两种制作方法
  17. python--修改证件照的大小
  18. 深入探访支付宝双11十年路,技术凿穿焦虑与想象极限 1
  19. SDUT 2084 DOTA-人王之战(博弈论)
  20. 1 华为南研所软件研发校园优招面试经历

热门文章

  1. mysql导入数据库报366_管家婆普及版sql数据库如何导入366++版数据库
  2. iPad与电脑端文件互传解决方案(基于nPlayer lite)
  3. jpg转pdf转换器 注册码
  4. 【若依(ruoyi)】template might not exist or might not be accessible by any of the configured Template Res
  5. 17.6:迪瑞克斯啦算法
  6. 无线通信原理及应用--阅读笔记一
  7. python字符串切片,os模块练习处理
  8. Geckofx使用心得(一)
  9. 2022年天猫年货节、淘宝年货节时间和跨店满200减20玩法解读
  10. allegro多版本安装_Revit2020怎么安装?revit2020版本安装教程,图文教程