Я заметил, что использование памяти кучи увеличивается в других программах,
поэтому я сделал эту простую программу, чтобы увидеть, сообщает ли JConsole то же самое в простом приложении HelloWorld. Я добавил Thread.sleep () в цикл, чтобы сохранить приложение для тестирования.
Каков источник этой проблемы? Должен ли я быть обеспокоен?
Эта диаграмма показывает мои настройки тестирования:
Вот код, который я использую для тестирования:
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
while(true)
{
try {
System.out.print("Sleeping...");
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Working");
}
}
}
Этот график показывает, что объем памяти кучи удваивается в течение 15 минут:
Через 25 минут я увидел восстановленную память, но та же утечка продолжилась оттуда:
Так ведет себя intellij? Достаточно ли восстановленной памяти, чтобы сказать, что это не утечка?
Примечание: система MacOS High Sierra на MacBook Pro 2,8 ГГц, 16 ГБ. IntelliJ Ultimate 2018.2.