检测内存的一般方法
- 1.静态检测法
- 手动
- 自动
- 2.动态检测法(instruments)
- 3.dealloc
- 构造方法看打印看调没调用
- 4.第三方自动检测库(MLeak)
野指针
product -> Scheme -> Run -> Diagnostics -> Zoombie Objects(僵尸对象)
- assign对应 __unsafe_unretain,__weak
- assign 与 weak,他们都是弱引用类型,最大的区别在哪里?
- weak声明的变量对象释放后自动勤工,赋值为il
- assign声明的变量对象释放后不会自动赋值为nil,会造成野指针错误
内存泄漏
- 循环引用使用静态分析检测不出来
block问题
- self -> block -> self
网友评论