КВО для одиночки с несколькими наблюдателями? - PullRequest
2 голосов
/ 01 июля 2011

В настоящее время я обдумываю, использовать ли KVO или NSNotifications для оповещения нескольких объектов в моем приложении iOS, когда свойство моего синглтона изменилось.

Поскольку все объекты, которые должны быть уведомлены об изменении, имеют ссылку на синглтон, KVO может показаться естественным решением. Однако , я никогда не использовал KVO с одиночкой и несколькими наблюдателями, поэтому я не знаю, является ли этот шаблон желательным или вообще возможным.

Является ли хорошей идеей (или даже возможной) использовать KVO для одиночного с несколькими наблюдателями?

Ответы [ 3 ]

5 голосов
/ 01 июля 2011

Используйте NSNotifications, когда вы можете ждать цикла событий.

Используйте KVO, когда вам нужен немедленный ответ на изменение состояния.

2 голосов
/ 08 июля 2011

Другие ответы не ответили на реальные вопросы, работает ли KVO с несколькими наблюдателями, наблюдающими одно и то же на одном месте.

Тестирование, однако, показывает, что оно работает нормально, и я ничего не видел о том, что эта практика не так.

2 голосов
/ 01 июля 2011

Использование KVO в этом возможно, так как базовый Cocoa Framework имеет встроенную поддержку для уведомления наблюдателей, и вам не нужно заново изобретать колесо

...