В настоящий момент я работаю над Java-приложением и оптимизирую его использование памяти. Насколько я знаю, я слежу за рекомендациями по сборке мусора. Однако кажется, что моя куча, кажется, сидит в максимальном размере, хотя она не нужна.
Моя программа запускает ресурсоемкую задачу один раз в час, когда компьютер не используется человеком. Эта задача использует приличный кусок памяти, но затем освобождает все сразу после завершения задачи. Профилировщик NetBeans показывает, что использование памяти выглядит следующим образом:
Я бы очень хотел вернуть все это кучу обратно в ОС, когда он не используется. У меня нет оснований бояться всего этого, пока программа даже не будет делать что-либо хотя бы на час.
Возможно ли это? Спасибо.