Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Java: java, memory, leak

Как выявлять и устранять утечки памяти в Java-приложениях?

Проверяет знание методов диагностики и устранения утечек памяти.

Короткий ответ

  1. Анализ дампов памяти: jmap + MAT (Eclipse Memory Analyzer).

  2. Профилирование: JProfiler/YourKit.

  3. Паттерны утечек: Статические коллекции, незакрытые ресурсы.

Длинный ответ

1. Снятие дампа:

jmap -dump:format=b,file=heap.hprof <pid>

2. Анализ в MAT:

  • Ищите объекты, занимающие больше всего памяти.

  • Проверяйте цепочки ссылок (например, статические HashMap).

3. Пример утечки:

public class Cache {
    private static Map<Long, User> users = new HashMap<>(); // Утечка!
}

Вывод:
Регулярный мониторинг и анализ дампов предотвращают критические утечки.

Уровень

  • Рейтинг:

    2

  • Сложность:

    8

Навыки

  • Java

    Java

Ключевые слова

#java

#memory

#leak

Подпишись на Java Developer в телеграм