美文网首页麦子面试题精选转载
iOS面试题:weak修饰的释放则自动被置为nil的实现原理

iOS面试题:weak修饰的释放则自动被置为nil的实现原理

作者: iOS猿_员 | 来源:发表于2019-02-22 15:14 被阅读309次

    原文:iOS面试题大全

    • Runtime维护着一个Weak表,用于存储指向某个对象的所有Weak指针

    • Weak表是Hash表,Key是所指对象的地址,Value是Weak指针地址的数组

    • 在对象被回收的时候,经过层层调用,会最终触发下面的方法将所有Weak指针的值设为nil。* runtime源码,objc-weak.m 的 arr_clear_deallocating 函数

    • weak指针的使用涉及到Hash表的增删改查,有一定的性能开销.

    相关文章

      网友评论

        本文标题:iOS面试题:weak修饰的释放则自动被置为nil的实现原理

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