美文网首页移动开发
iOS 解决内存泄露(持续更新)

iOS 解决内存泄露(持续更新)

作者: saber森森 | 来源:发表于2018-02-26 11:40 被阅读4次

介绍:

目前公司项目处于优化状态,所以特地在内存泄露上做优化,目前使用两种工具,一种使用MLeaksFinder(腾讯旗下的)和苹果自带的instrument下的Leaks工具。

内存泄露问题:

1.问题一:

问题一 问题一

问题:该代码主要是用于3DES加密使用,看完整段代码后,发现malloc后并没有释放也没有将指向指针NULL掉,导致内存泄露2Bytes。

解决方案:则是在之后将其内存空间释放,并且指针NULL掉。如图:

解决问题一

工具:Leaks

参考:关于C语言的malloc函数以及内存泄漏的问题http://blog.csdn.net/qq_26501341/article/details/57075502

2.问题二:

问题二 问题二

问题:这个方法返回的对象是CFStringRef格式,这是个Core Foundation对象,在这里将其强制转换以后可以当做NSString对象来使用,但是这个CF对象是的引用计数+1,此时是需要处理的,在ARC下也不会自动释放,需要手动在使用完这个对象后调用CFRelease去手动释放即: CFRelease(uuid),但是已经对uuid释放了,所以问题出在appUID中,只要对其添加自动释放池就可解决。

解决方案:对appUID添加自动释放池就可解决。如图:

解决问题二

工具:Leaks

参考:http://blog.csdn.net/liyiyismile/article/details/50476641

相关文章

网友评论

    本文标题:iOS 解决内存泄露(持续更新)

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