Изучение

Жизненный цикл и teardown

Запрет новых разрешений во время закрытия и освобождение объектов в обратном порядке зависимостей.

v0.1.0-dev.1Продвинутый уровеньark_di

Жизненный цикл и teardown

При закрытии контейнер переходит в состояние closing, запрещает новые внешние разрешения, ожидает активные resolution lease, строит план по зафиксированным зависимостям и вызывает disposer в обратном порядке.

Если Service зависит от Repository, а Repository — от Client, порядок будет следующим:

text
Service → Repository → Client

Контейнер пытается выполнить весь план. Несколько ошибок объединяются в DiCloseException, поэтому один сбой не отменяет независимую очистку. Повторный close() возвращает тот же Future.

При цикле DiCircularDependencyException содержит путь зависимостей, сформировавший цикл.

ARKTELOS

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