美文网首页
2018-04-24

2018-04-24

作者: iOS打怪升级 | 来源:发表于2018-04-25 00:30 被阅读4次

    第五章:内存管理

    29. 什么是ARC:对象被引用的次数。
    30. ARC 下可以用“静态分析器”查找内存泄漏问题
    31. 在dealloc 里面只释放引用和解除监听

    执行异步的方法不应该在dealloc里面执行,因为此时对象已经处于回收状态了

    32. 编写异常安全代码时注意内存问题:try-catch-finally
    33. 以弱引用来避免保留环

    unsafe_unretained 相当于assgin ,声明表示属性可能不安全,系统回收后,在其上调用方法可能使程序崩溃。
    区别在于前者修饰对象类型,后者assgin 修饰基本类型
    weak 和上述内存语义相同,不同的是对象被回收后,会自动置为nil,这是一个安全的特性。

    34. 用自动释放池@autoreleasePool降低内存峰值
    35. 用僵尸对象调试程序:scheme->
    36. 不要使用retainCount:无用的方法

    ARC已经废弃,不能使用,即使再MRC下也是不准确的,只代表某个时间点上的值,并未考虑系统稍后会把自动释放池清空后的状态;另外可能永远都不会返回0,比如系统会优化对象的释放行为,在等于1的时候就回收了

    相关文章

      网友评论

          本文标题:2018-04-24

          本文链接:https://www.haomeiwen.com/subject/bzhjlftx.html