Создаёшь бродкаст, у него лайвдату статическую, подписываешься где нужно. И шлешь ивенты если есть подписки
В таких механизмах как я понял главное что бы подписываться, а после не забывать отписываться.
Просто я на с++ делал как-то объект, который не увеличивает счетчик и самоисключается из списка когда дестроится (в дополнение к классическому счетчику). Вот и подумал, может здесь есть такое.