Ios 未收到通知

Ios 未收到通知,ios,objective-c,multithreading,Ios,Objective C,Multithreading,我有一个多线程程序,通过NSNotificationCenter(addObserver:…和postNotification:…方法)发送消息 这些线程订阅了不同的通知,其中一些是共享的,因此应该在不同的线程中接收消息 通常,所有通知都会在所有线程中正确接收和处理,但有时在侦听通知的某些线程中不会调用通知的回调函数 是否有办法确保所有订阅的线程都能处理我的所有通知?重要的不是订阅通知的线程,而是发布通知的线程。您可能需要编写自己的通知管理器来实现这一点。我认为这不会太复杂,我建议使用dispa

我有一个多线程程序,通过NSNotificationCenter(addObserver:…和postNotification:…方法)发送消息

这些线程订阅了不同的通知,其中一些是共享的,因此应该在不同的线程中接收消息

通常,所有通知都会在所有线程中正确接收和处理,但有时在侦听通知的某些线程中不会调用通知的回调函数


是否有办法确保所有订阅的线程都能处理我的所有通知?

重要的不是订阅通知的线程,而是发布通知的线程。您可能需要编写自己的通知管理器来实现这一点。我认为这不会太复杂,我建议使用
dispatch\u queue\t
s而不是线程。

重要的不是订阅通知的线程,而是发布通知的线程。您可能需要编写自己的通知管理器来实现这一点。我认为这不会太复杂,我建议使用
dispatch\u queue\u t
s而不是线程。

NSNotificationCenter在原始通知触发的同一线程上启动注册方法。您确定此线程仍处于活动状态吗?

NSNotificationCenter在原始通知触发的同一线程上启动已注册的方法。您确定此线程仍处于活动状态吗?

对不起,我不明白。所有通知都发布在同一个线程中。为什么有些收到了,有些没有收到?如果你提供了一些你正在使用的代码,它可能会更容易帮助你确定哪里出了问题。刚刚解决!在查看代码时,我意识到通知工作正常。问题是在通知观察者的侦听器中执行的NSPort操作的参数。谢谢合作!对不起,我不明白。所有通知都发布在同一个线程中。为什么有些收到了,有些没有收到?如果你提供了一些你正在使用的代码,它可能会更容易帮助你确定哪里出了问题。刚刚解决!在查看代码时,我意识到通知工作正常。问题是在通知观察者的侦听器中执行的NSPort操作的参数。谢谢合作!