Avoiding Retain Cycles(避免循环retain)
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
Retain/release
的时候有时会出现一些难题,就是会造成循环retain
。
基本上是这样的情况,对象A将对象B做了retain
操作,而对象B又将对象A做了retain
操作。这种情况只要发生,那么对象A和对象B就永远不会被dealloc
,即便他们两个对象变得完全没有用处。
实际当中,其实不只会出现两个对象之间的retain
循环,更多地是多个对象之间的循环retain
。避免出现这种问题的唯一方法就是你在设计的时候要小心和仔细去避免可能引起循环的问题。
在线练习
{$ activeFileHint $}