В моем процессе я постоянно создаю новый объект Thread (фактически подкласс Thread) (до нескольких в секунду), запускаю его и чисто завершаю.
Я заметил, что, когда, например, процесс был запущен в течение 25 дней, он может умереть, оставив позади hprof, что означает OOM. Но дамп кучи крошечный по сравнению с выделенной памятью для кучи, поэтому, вероятно, это OOM PermGen, и я пытаюсь выяснить, кто виноват.
Я не использую никаких специальных запретов параметров jvm -XX: + HeapDumpOnOutOfMemoryError