iOS开发 ARC下造成内存泄露的问题
来源:互联网 发布:如何找回域名密码 编辑:程序博客网 时间:2024/05/20 23:33
新到公司,着手准备跟进项目,但是发现内存越来越大,项目是arc的,于是在某个viewcontroller中加入了dealloc方法打断电,发现viewcontroller果然没有释放,找啊找:
先是把所有的block中用到的self换成了weakself,结果还是不行;
又用instrument看,搞了半天发现这工具还是特么的鸡肋,跟我显示
然后我就不能懂了,去stackoverflow问老外,老外啪啪啪给我解释了一通,原来是个系统库生成的单例,一直不会释放的,叫我不要怪instruments,它是无辜的。。。
然后我只有最笨的办法了,一段一段地删除代码,看什么时候会进入dealloc,找着找着发现这个viewcontroller的superviewcontroller 的superviewcontroller中定义了一个内部全局变量
@interface GrandfatherViewController(){ id _leftTarget;}@implementation GrandfatherViewController...-(void) xxxMethord:(id)target{ _leftTarget = target;}...@end
这个xxxmethord是被GrandfatherViewControllere 的子类superviewcontroller饶了几个弯调用的,而且传入的参数是self。类似的内部变量持有self的问题大概存在两三处,解决掉这个问题之后果然起作用了。dealloc终于被调用了。
0 0
- iOS开发 ARC下造成内存泄露的问题
- [IOS 开发] ARC内存泄露
- iOS ARC 内存泄露问题
- ARC下内存泄露问题
- ARC下内存泄露问题
- ARC 下的内存泄露
- iOS ARC下内存泄露 注意点
- IOS ARC下内存泄露总结
- ARC 下内存泄露的那些点
- ARC 下内存泄露的那些点
- ARC 下内存泄露的那些点
- ARC 下内存泄露的那些点
- ARC下可能的内存泄露
- Android内存泄露造成的OOM问题
- iOS ARC也会有内存泄露
- iOS ARC也会有内存泄露
- iOS ARC也会有内存泄露
- iOS ARC也会有内存泄露
- Caffe安装指南
- 安卓NDK开发入门DEMO
- 挑战面试编程:左移字符串
- ContentProvider的用法浅析
- 开发辅助工具
- iOS开发 ARC下造成内存泄露的问题
- hdu 2212
- mllib svm分类
- Android开发中高效的数据结构用SparseArray代替HashMap
- 关于项目依赖问题
- hive hbase 整合
- mybatis 批处理更新
- 用Mysql5.6插入出现时间问题Incorrect datetime value: '' for column 'createtime'
- DBCP连接池原理分析