App几个可能造成内存泄漏的情况:
2024-10-20 11:56:50
App几个可能造成内存泄漏的情况:
1.block块中直接用self调用,self将会被block copy到内部增加一次饮用计数,形成循环引用
在block里调用self会不会造成循环引用和这个block是否被这个单例所持有有关
2.delegate声明为strong会造成循环引用,delegate也不能用assign来声明,因为assign可能会造成野指针,应该用weak声明,工程中可能有人习惯用superVC,parentVC等方式来实现delegate类似的功能,这时候要尤其注意
3.有的时候创建一个view会加到windows上,但是最后为了下次不用创建就能使用,所以只将alpha设为0或hidden为YES,没有从windows上移除,这时候就造成了内存泄漏,甚至有的下次没有重用之前创建的view,重复创建,造成view越来越多,泄漏越来越大
4.可能有的数据放到了单例中保存,但是没有指定在何种情况下清空保存在单例中的数据,这时候也会造成泄漏
5.NSTimer会强引用self,所以用完之后要调用
最新文章
- 常用js函数封装
- CDN网络的原理
- codeforces A. Domino 解题报告
- Java是传值还是传引用
- 14、NFC技术:使用Android Beam技术传输文本
- selenium python (十)浏览器多窗口处理
- Base64加密
- 写个Python练练手吧
- shorter concat [reverse longer]
- gulp初涉
- 读取上传的CSV为DataTable
- matlab 2016a破解中文版安装教程
- 第二篇--上传git 代码
- 六、web应用与Tomcat
- JVM入门到放弃之基本概念
- eclipse安装中java环境的搭建
- PAT甲级1135 Is It A Red-Black Tree?【dfs】
- ModBus通信协议的【Modbus RTU 协议使用汇总】
- java生成TXT
- 利用cocoapods创建基于git的私有库Spec Repo