开发者社区> 问答> 正文

关于dealloc方法不个执行 IOS

ViewController 内没有timer 也没用使用retain的delegate。 初始化Push之后也release了。可是这方法就是不走。。。求解。。

展开
收起
爵霸 2016-03-13 10:58:41 2233 0
2 条回答
写回答
取消 提交回答
  • 通常是block等匿名函数对内部对象引用retain了导致,检查下这块吧

    2019-07-17 19:02:10
    赞同 展开评论 打赏
  • 你看下这个类里面有没有使用Block,Block体内使用实例变量也会造成循环引用,使得拥有这个实例的对象不能释放。
    例如你这个类叫OneViewController,有个属性是NSString name; 如果你在block体中使用了self.name,那样子的话这个类就没法释放。
    要解决这个问题,MRC下只需__block Viewcontroller weakSelf = self; ARC下将__block 换为 __weak

    2019-07-17 19:02:09
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
手淘iOS性能优化探索 立即下载
From Java/Android to Swift iOS 立即下载
深入剖析iOS性能优化 立即下载