Jak niezawodnie pobrać zrzut pamięci JVM, jeśli aplikacja jest w GC?

Próbuję znaleźć przyczynę wycieków pamięci w mojej aplikacji java. Muszę uzyskać zrzut sterty dla procesu, który jest w adługie Cykl GC. Jmap nie działa w tym przypadku, ponieważ aplikacja jest zawieszona, a sterta jest bardzo duża.

Niestety, jmap rzuca UnknownOopException na zrzucony rdzeń. Przypuszczam, że nie jest poprawne zrzucanie rdzenia podczas GC. Czy jest jakiś sposób na zawieszenie procesu java w momencie, w którym zrobienie zrzutu pamięci będzie prawidłowe?

A może całkowicie się mylę i zepsułem zrzut pamięci z powodu innego problemu?

questionAnswers(3)

yourAnswerToTheQuestion