A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

arc   机制下的循环引用:  对象a 中有一个对象b作为属性,对象b中又有一个对象a做属性。
        如果两边都使用strong来修饰。并且互相赋值,会导致程序结束前,a和b都无法释放。

解决方法: 1端用strong         1端用weak

原理是:使得其中一个对象植只呗一个弱指针指向,导致这个对象释放,其内部指向另一个对象的强指针跟着销毁。最终另外一个对象因为没有强指针指向也被释放。

mrc 机制下:同理。

     解决方法: 1端使用retain     1端使用assign

注意:使用assign 的那一端,delay 不需要再去release 对象。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马