Изучение

Async-разрешение

Предсказуемое разрешение async-зависимостей и одна in-flight инициализация Lazy Singleton.

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

Async-разрешение

get<T>() работает предсказуемо: он не блокирует выполнение и не возвращает Future. Синхронный запрос async-регистрации завершается DiAsyncResolutionRequiredException; для него предназначен getAsync<T>().

Async Factory начинает новую операцию для каждого запроса. Async Lazy Singleton объединяет параллельные запросы в одну in-flight инициализацию и сохраняет только успешный результат.

text
caller A ─┐
caller B ─┼─→ один Future инициализации → один Singleton
caller C ─┘

После ошибки неуспешная попытка очищается, и следующий запрос может повторить инициализацию. Resolver Factory позволяет зафиксировать зависимости для диагностики циклов и планирования teardown.

ARKTELOS

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