2016-02-02 22 views
0

У нас есть общий пакет услуг, запущенный в нашем контейнере Karaf, и мы хотели бы, чтобы общий пакет спустился последним, когда мы завершаем контейнер.делает org.apache.aries.blueprint.preemptiveShutdown = false гарантирует завершение пучков в порядке начального уровня.

Мы хотели бы знать, если org.apache.aries.blueprint.preemptiveShutdown = ложные гарантии отключение пучков в порядке запуска уровня (один с более высоким уровнем запуска будет завершение первого?)

ответ

1

Theorically, да , это свойство отключает поведение проекта по умолчанию, когда контейнер уничтожается. По умолчанию (или когда это свойство истинно), когда пакет 0 остановлен, все контейнеры чертежей уничтожаются. с этим свойством false, контейнер чертежа уничтожается, когда пакет останавливается каркасом, используя начальный уровень в обратном порядке.

Но это не «гарантировано». Этот тип расширителя часто использует асинхронную стратегию: создание и уничтожение контекста может быть обработано другим потоком. afaik, текущая версия арий выглядит так, чтобы синхронно разрушать контекст чертежа, когда пучок остановлен.