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?