У меня очень странная проблема.Я работаю над приложением OSGi, основанным на Eclipse Equinox;он был разработан с использованием OSGi Log Service (реализация Equinox), и сейчас я тестирую его с реализацией Apache Felix OSGi Log Service.
На стороне API / кода все работает нормально: служба журналов OSGi является стандартной,так что я могу без проблем переключаться с Equinox на Felix.
Однако я наблюдал это странное поведение: я запустил приложение как консольную программу, чтобы увидеть вывод журнала на консоли, и прикрепил его к JVisualVM, чтобы проанализироватьиспользование памяти;график JVisualVM показывает используемую кучу в 80 МБ.
Через 13 часов средний размер кучи достиг 220 МБ, поэтому я решил проанализировать дамп кучи и нажал кнопку «Дамп кучи»: послеВ этой операции график JVisualVM показал используемую кучу в 20 (мин) -35 (макс) МБ (?!?!), и это значение было постоянным.
Может ли операция "Сброс кучи" освободить почти 200 МБ?Если да, то ПОЧЕМУ?
Я никогда не видел такого поведения с реализацией службы журналов Equinox OSGi, поэтому я подозреваю, что журнал Felix вовлечен в эту проблему ...
спасибо