在NON-ARC中分配并保留循环

时间:2015-10-27 12:29:38

标签: ios weak-references assign retain-cycle weak

如何在NON-ARC中解决保留周期!

我知道分配是弱者的替代品。

weak将其值设置为nil如果已分配对象已分配,而assign不是

所以如何提前完成任何人都可以帮助我理解

1 个答案:

答案 0 :(得分:1)

将弱引用归零(ARC调用weak)仅存在于ARC下。

非归零弱引用(ARC调用unsafe_unretained)可以在MRC或ARC中使用,并且是唯一一种"弱引用"在MRC中使用。

您正在询问如何避免使用非归零弱引用来悬挂引用。你只需要设计程序的逻辑,这样它就不会发生。这并不难。

通常,"父母"对象将强烈引用" child"对象,然后来自"孩子的反向引用"反对"父母"将是一个弱引用(在这种情况下是一个非归零的弱引用)。所有你需要做的就是,当父母"对象在其取消初始化时被nil取消分配,后面引用了" child"对象必须 - 它可以访问这些"孩子"对象,因为它有对它们的引用。