Использование компактного метода Map Db и как его использовать для очистки памяти
Может кто-нибудь сказать мне, что используется метод mapdb.compact(). Я ищу, как очистить объекты из кучи после вызова метода commit()
1 ответ
Вообще говоря, цель compact()
Метод состоит в том, чтобы уменьшить использование ресурсов сжатия структур данных магазина. Раздел "Начало работы" руководства гласит:
MapDB
иногда нужно уплотнение. БежатьDB.compact()
или посмотрите параметры фонового уплотнения.
Тем не мение:
Точное поведение сжатия будет зависеть от типа используемой вами MapDB. В некоторых случаях это (пока) не реализовано. (Вы не говорите, какой вы используете...)
Вероятно, нецелесообразно (неэффективно) часто компактировать.
Я предполагаю, что сжатие MapDB, которая хранит данные в куче Java, не сразу освобождает память. Скорее, он сделает объекты недоступными, чтобы их можно было восстановить с помощью Java GC.