Мне нужен способ запросить дамп кучи из приложения.
Обоснование: когда я сталкиваюсь с определенным состоянием ошибки, я хотел бы сбросить кучу, чтобы увидеть, что удерживает память.
Но я хотел бы автоматизировать это (например, когда я обнаруживаю, что произошло какое-то конкретное условие. Или когда сторожевой таймер больше не получает свои пинги. Когда какой-то тест терпит неудачу). Таким образом, мне нужен способ сбрасывать кучу из самого приложения. Кажется, я не могу найти его с материалом MX beans. Хотя MX Beans может дать очень хорошие трассировки стека с информацией о мониторе и «собственном синхронизаторе», информацией о взаимоблокировках и конфликтах, я не могу найти способ запросить дамп кучи. Есть ли такой способ? Или каким-то косвенным образом, например, как это делают эти штуки JVisualVM? И можно сказать JVM сбрасывать ядро на OutOfMemoryExceptions..?