iOS 多播委托

      iOS回调有Delegate,NSNotificationCenter,block,kvo
      但是项目中回调 有种情况,一对一,一对多。对于一对多,基本上都是通知中心了。然后有时候一对多,用通知很膈应。
      需求:聊天底层收到消息,之后,我们需要刷新聊天页面和会话列表。
      这个时候我们就需要用到 多播委托

多播委托 是什么

它是指允许创建方法的调用列表或者链表的能力。当多播委托被调用时,列表中的方法均自动执行。
普通代理只能是一对一的回调,无法做到一对多的回调,而多播委托正式对delegate的一种扩展与延伸,多了一个注册和取消的过程。任何需要回调的对象都必须先注册。

实现方案
  1. XMPPframework 里的GCDMulticastDelegate.h,GCDMulticastDelegate.m
  2. NSProxy 实现多播委托

推荐阅读更多精彩内容