Жизненный цикл некоторых синглетонов привязан к жизненному циклу приложений. Жизненный цикл некоторых синглетонов привязан к входу / выходу из системы.
Так что, если синглтон должен быть освобожден при выходе? Я думаю, что это правильный случай, когда использование [weak self]
может быть полезным даже для одиночного.
В противном случае, как сказал Вадиан, DispatchQueue
замыкания не вызывают циклы сохранения, потому что self не владеет ими. Подробнее см. здесь