iOS--造成dealloc不调用的原因
来源:互联网 发布:网络信息发布软件 编辑:程序博客网 时间:2024/04/29 05:33
1.ViewController中存在NSTimer
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateTime:) userInfo:nil repeats:YES];
2.ViewController中有关的代理,一个比较隐秘的因素,你去找找与这个类有关的代理,有没有强引用属性?比如一个代理的delegate应该是 assign 的现在是retain
3.ViewController中有Block
Block体内使用实例变量也会造成循环引用,使得拥有这个实例的对象不能释放。
例如你这个类叫OneViewController,有个属性是NSString *name; 如果你在block体中使用了self.name,那样子的话这个类就没法释放。
要解决这个问题,MRC下只需
__block Viewcontroller *weakSelf = self;ARC下将block 换为 weak
2 0
- iOS--造成dealloc不调用的原因
- iOS中造成dealloc不调用的原因
- ios 控制器不调用dealloc原因详解
- iOS viewcontroller中的dealloc方法不调用
- 关于dealloc不执行的原因
- IOS-57-导致内存未释放的常见原因(现象:dealloc不执行等)
- dealloc方法不调用
- iOS开发--- WKWebView导致Controller不调用dealloc
- ViewController页面不走dealloc方法的原因
- IOS开发之 ---- ARC下的Dealloc保留原因[转]
- iOS在ARC下保留dealloc的原因
- viewController被POP后不调用dealloc的问题
- iOS dealloc方法没有调用
- iOS dealloc 不执行或延迟执行的问题
- iOS dealloc 不执行或延迟执行的问题
- iOS定位不调用代理方法的可能原因
- iOS cellForRowAtIndexPath 不调用原因分析
- MMDrawerController 切换页面时不调用dealloc
- linux tomcat日志查看实用命令
- Android DataBinding库(MVVM设计模式)
- 区间覆盖与合并
- IT-DB-mongodb-mongodb详细监控
- iOS打包流程
- iOS--造成dealloc不调用的原因
- 自动创建设备节点时遇到的BUG
- Ehcache注脚核心逻辑源码学习
- TCP/IP的三次握手与四次挥手详解
- 位置相关(无关)码 浅谈
- iOS--jsPath热更新
- Jenkins定时构建和邮件发送
- Android4种网络连接方式HttpClient、HttpURLConnection、OKHttp和Volley优缺点和性能对比
- 五年Android开发,让我“刻骨铭心”的那些坑(转载)