美文网首页
如何检测iOS项目中self引起的内存泄露

如何检测iOS项目中self引起的内存泄露

作者: __yuyang__ | 来源:发表于2016-03-21 16:28 被阅读433次

    项目地址:https://github.com/hades0918/CheckLeak

          在iOS的项目开发中我们常用到block,很实用,但是block给我们带来的问题也很多,如在block里面写self会导致内存泄露。小弟写了个小工具来检测这个问题,希望给大家带来方便,望star😄。

          首先,你需要安装pyobjc库(没有你想象中那么麻烦),然后配置工程路径(见readMe.md),那么就可以用了。如图:

    图1

    然后找到相关文件的指定行,发现代码如下:

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1*NSEC_PER_SEC)),dispatch_get_main_queue(), ^{

    self.view.backgroundColor= [UIColorwhiteColor];

    });

    把self改成blockSelf(不错,你解决了一个重大bug,快让领导请你吃饭吧😄)

    什么?你说着么用着还是麻烦,要开着终端,那么我们来解决一下。我们使用这个工具(mac自带)炮筒机器人:http://bbs.feng.com/read-htm-tid-4500879.html

    图2

    创建一个脚本工程,把代码复制进去,生成app,OK!

    运行以后是这个样子的:

    图3

    当然你也可以把这个设置成开机启动,就什么都不用管了。 

    相关文章

      网友评论

          本文标题:如何检测iOS项目中self引起的内存泄露

          本文链接:https://www.haomeiwen.com/subject/femklttx.html