История изменений
Исправление DarkAmateur, (текущая версия) :
Код не запускал и не профилировал, но порассуждаю.
У тебя на каждый проход цикла строится новый строковый объект. По логике вещей: да, с течение времени будет выглядеть так, что оно жрёт память, но ровно до тех пор, пока не придёт GC и не уберёт. VisualVM тебе должен показать пилу по метрике памяти.
Если памяти очень много, то да, GC придёт не скоро и будет казаться, что Java течёт. Попробуй руками выставить лимиты памяти через опции JVM.
Исходная версия DarkAmateur, :
Код не запускал и не профилировал, но порассуждаю.
У тебя на каждый проход цикла строится новый строковый объект. По логике вещей: да, с течение времени будет выглядеть так, что оно жрёт память, но ровно до тех пор, пока не придёт GC и не уберёт. VisualVM тебе должен показать пилу по метрике памяти.
Если памяти очень много, то да, GC придёт не скоро и будет казаться, что Java течёт. Попробуй руками выставить лимиты памитя через опции JVM.