我有一个多线程程序通过NSNotificationCenter发送消息(addObserver:..和postNotification:...方法)。
线程订阅了不同的通知,其中一些是共享的,因此应该在各种线程中接收消息。
通常,所有通知都在所有线程中正确接收和处理,但有时在一些正在侦听通知的线程中不会调用通知的回调函数。
有没有办法确保所有订阅的帖子都能处理我的所有通知?
答案 0 :(得分:1)
重要的不是您订阅通知的主题,而是发布通知的主题。您可能必须编写自己的通知管理器才能实现此目的。我认为它不会过于复杂,我建议使用dispatch_queue_t
而不是线程。
答案 1 :(得分:0)
NSNotificationCenter在原始通知触发的同一线程上启动已注册的方法。你确定这个帖子还活着吗?