Я использую NSDistributedNotifications в качестве IPC в macOS между двумя процессами. Иногда вижу, что уведомление отправлено, но не получено и нужная операция не выполнена.
Код отправителя:
[[NSDistributedNotificationCenter defaultCenter]postNotificationName:@"doSomething" object:myObject userInfo:config deliverImmediately:YES];
Код получателя:
[[NSDistributedNotificationCenter defaultCenter]addObserver:self selector:@selector(myfunc:) name:@"doSomething" object:myObject];
Есть ли способ отладить это? Могу ли я запустить какую-нибудь утилиту командной строки, такую как dtrace или около того, чтобы увидеть, было ли уведомление отправлено желаемому процессу? Любая помощь будет ощутима
myObject
приемника? - person Willeke   schedule 19.10.2016nil
, процесс будет получать все распределенные уведомления. - person ZestyZest   schedule 19.10.2016myObject
получателя. - person Willeke   schedule 20.10.2016When using distributed notifications, though, the object must be a string (CFString or NSString). A useful choice for the observed string is the bundle identifier of the target application.
Можете ли вы подтвердить, действительно ли объект должен иметь тот же адрес? - person ZestyZest   schedule 22.10.2016addObserver
. То, что вы говорите, имеет больше смысла. - person Willeke   schedule 22.10.2016