У меня есть приложение javaws (JNLP), которое иногда будет выдавать
java.lang.OutOfMemoryError: Java heap space
, но сразу после того, как это произошло, клиент нажимает «m» в консоли (для использования памяти) и «g»(чтобы запустить полный GC вручную), и я вижу
Memory: 1,013,632K Free: 167,815K (16%) ... completed.
Garbage collect ... completed.
Memory: 1,013,632K Free: 760,924K (75%) ... completed.
, который для меня выглядит как много свободной памяти даже до GC и тонн после.Я уже удвоил объем памяти по сравнению с тем, что было раньше (чего в большинстве случаев было достаточно).Трассировка стека отличается каждый раз.Кто-нибудь может подсказать, что может быть причиной этого и как это исправить?
Это не дубликат других вопросов OutOfMemoryError! Это довольно общие вопросы, это конкретно вопрос о странном случае, когдамы, кажется, получаем ошибку, когда на самом деле не хватает памяти.