Skip to Content
Objective-CCocoa 模式

Cocoa 模式

委托模式(Delegate Pattern)

委托(Delegate)、目标对象(Target Object)和块指针(Block Pointer)在会导致循环引用(Retain Cycle)时不应被持有。

为避免导致循环引用,委托或目标指针应在明确不再需要向该对象发送消息时立即释放。

如果没有明确的时间点表明不再需要委托或目标指针,则该指针应仅以弱引用方式持有。

块指针不能以弱引用方式持有。为避免在客户端代码中导致循环引用,块指针仅应在可以在被调用后或不再需要时显式释放的回调中使用。否则,回调应通过弱委托或目标指针完成。

Last updated on