Нужно ли синхронизировать методы активирования и деактивации пакета в OSGI? - PullRequest
0 голосов
/ 08 июня 2018

У нас есть компонент и определены методы его активации и деактивации.Мы создаем некоторые объекты в методе активации, а в деактивации мы его очищаем.Нужно ли синхронизировать объекты, которые создаются, так как может произойти несколько вызовов для активации, деактивации.

Ответы [ 2 ]

0 голосов
/ 11 июня 2018

Существует строгая связь между случаем вызова методов активации и деактивации.Это означает, что оба гарантируют, что ваш метод активации завершит до того, как вызовет метод деактивации , и , что соответствующие барьеры памяти будут переданы, чтобы убедиться, чточто любые поля, заданные вами в активации, видны при деактивации.

С точки зрения синхронизации важно иметь дело с тем, чтобы любые динамические ссылки, которые есть у вашего компонента, обрабатывались в потоке.безопасный способЭти ссылки могут быть восстановлены, пока ваш компонент еще работает, и, следовательно, должны справляться с одновременными изменениями.

0 голосов
/ 08 июня 2018

Объекты компонентов декларативных сервисов используются только для одного цикла активации и деактивации.Для этих методов будет только один вызов.

Если компонент снова активируется, для него создается новый объект Java.

...