Я переношу одну часть своей структуры Objective-C, где у меня был собственный класс MyNotificationCenter для целей наблюдения.
У класса было свойство типа NSArray со всеми наблюдаемыми, которые заинтересованы в уведомлениях.
В target-c массив сохраняет свои элементы, и в этом нет необходимости, потому что наблюдатель может больше не существовать в тот момент, когда центр пытается уведомить его, и вы не хотите иметь цикл сохранения.
Поэтому я использовал этот блок кода, который сохранял все элементы в массиве, не сохраняя их:
_observers = CFBridgingRelease(CFArrayCreateMutable(NULL, 0, NULL));
Я знаю, что Swift — это другой зверь, однако есть ли такая концепция в Swift?