为什么NSURLConnection和CAAnimation委托保留?

问题描述:

我是ios开发新手。我刚开始知道他们是基金会中的两位代表,他们都保留着。我的理解是,代表必须始终松散耦合。那么为什么这两个具体保留?为什么NSURLConnection和CAAnimation委托保留?

由于

通常,需要用于一个对象的整个生命周期,这就是为什么它是通常弱/非保留参考的委托。否则,对象和代表都不能被释放,因为它们都会等待对方消失。

但是,在NSURLConnectionCAAnimation的情况下,委托实际上只是对于具有某种“完成”状态的特定任务才需要。当连接完成加载/取消或动画到达结束时,他们可以自行释放委托,从而打破保留周期。