Встречается на собеседованиях • сегодня

Опиши процесс аллокации памяти при OutOfMemoryError

OutOfMemoryError возникает, когда JVM не может выделить память для нового объекта, и сборщик мусора (GC) не может освободить достаточно места. Процесс: 1. JVM пытается выделить память в куче (heap) для нового объекта. 2. Если свободной памяти недостаточно, запускается GC. 3. Если после GC памяти всё ещё не хватает, JVM пытается расширить кучу (если `-Xmx` позволяет). 4. Если расширение невозможно или не помогает, выбрасывается OutOfMemoryError. Пример: ```java // -Xmx10m - для демонстрации List list = new ArrayList<>(); while (true) { list.add(new Object()); // OutOfMemoryError } ``` Типы OOM: - Heap space (обычная куча) - Metaspace (для классов) - Direct buffer memory (для NIO) - Unable to create new native thread (для потоков)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы