NSNotificationCenter: объекты получают уведомления в том же потоке, в котором они размещены? - PullRequest
18 голосов
/ 17 июня 2009

Мне интересно знать, могу ли я ожидать, что метод объекта наблюдения будет помещен в стек до того, как метод объекта публикации будет завершен и удален.

Ответы [ 2 ]

36 голосов
/ 17 июня 2009

Краткий ответ - да ... "Центры регулярных уведомлений доставляют уведомления в ветке, в которой было опубликовано уведомление. Распределенные центры уведомлений доставляют уведомления в основной ветке".

Тем не менее, у Apple есть документы на эту тему, которые могут оказаться вам полезными, и из которых взята вышеприведенная цитата:

Темы программирования уведомлений: доставка уведомлений отдельным потокам

13 голосов
/ 17 июня 2009

Просто надоело искать это сам, позорно:

Из справочника класса: NSNotificationCenter отправляет все уведомления синхронно

Также, если вы предпочитаете, вы можете использовать NSNotificationQueue для асинхронной отправки уведомлений

...