Использование компактного метода Map Db и как его использовать для очистки памяти

Может кто-нибудь сказать мне, что используется метод mapdb.compact(). Я ищу, как очистить объекты из кучи после вызова метода commit()

1 ответ

Вообще говоря, цель compact() Метод состоит в том, чтобы уменьшить использование ресурсов сжатия структур данных магазина. Раздел "Начало работы" руководства гласит:

MapDB иногда нужно уплотнение. Бежать DB.compact() или посмотрите параметры фонового уплотнения.

Тем не мение:

  • Точное поведение сжатия будет зависеть от типа используемой вами MapDB. В некоторых случаях это (пока) не реализовано. (Вы не говорите, какой вы используете...)

  • Вероятно, нецелесообразно (неэффективно) часто компактировать.

  • Я предполагаю, что сжатие MapDB, которая хранит данные в куче Java, не сразу освобождает память. Скорее, он сделает объекты недоступными, чтобы их можно было восстановить с помощью Java GC.

Другие вопросы по тегам