1 使用了单例和观察者模式
2 观察者和发出通知的,在同一个线程,且和发出通知者在同一线程
3 NSNotificationName可为空nil,空字符串也可视为是一个name。当NSNotificationName为nil时,会接受所有通知
4 部分原理:存在name和nameless两个表,在注册观察者时,根据name是否为空会添加到对应的表中。当一个通知被触发时,先在name表中寻找观察者,对其发送通知,然后再给nameless表中所有观察者发送通知。(只有当object也为nil时触发此逻辑)
网友评论