NSNotificationCenter: gli oggetti ricevono notifiche sullo stesso thread in cui sono pubblicati?
-
05-07-2019 - |
Domanda
Sono interessato a sapere se posso aspettarmi che il metodo dell'oggetto osservante venga inserito nello stack prima che il metodo dell'oggetto pubblicante sia stato completato e rimosso.
Soluzione
La risposta breve è sì ... "I centri di notifica regolari inviano notifiche sul thread in cui è stata pubblicata la notifica. I centri di notifica distribuiti forniscono notifiche sul thread principale " ;.
Tuttavia, Apple ha documenti su questo argomento che potresti trovare utili e dai quali è stata estratta la citazione sopra:
Temi di programmazione delle notifiche: invio di notifiche a thread particolari
Altri suggerimenti
Mi sono solo preso la briga di cercarlo, vergognoso:
Dal riferimento alla classe: NSNotificationCenter pubblica tutte le notifiche in modo sincrono
Inoltre, se preferisci, puoi utilizzare NSNotificationQueue per pubblicare le notifiche in modo asincrono