Java - почему нет OutOfMemoryError?

Я пытаюсь сгенерировать OutOfMemoryError, используя следующий код

ArrayList container = new ArrayList();

while (true){
    Integer i = new Integer(1);
    container.add(i);
}

Приложение вылетает, но ничего не печатается и не сбрасывается! Это нормально? я должен передать какую-то опцию команде Java? Как заставить jvm распечатать это сообщение?

Я делаю это, потому что у меня есть приложение, работающее во встроенной системе (использующее cvm), которое завершается сбоем без следа. Я подозреваю утечку памяти, поэтому я хотел написать код, который вызывает утечку памяти, чтобы увидеть, какое сообщение выводит jvm. Вот почему я написал этот код, когда я его запустил, он потерпел крах, но не дал никаких следов, вот почему я разместил этот вопрос

Elie

1 ответ

Я понимаю

Исключение в потоке "main" java.lang.OutOfMemoryError: пространство кучи Java

ArrayList container = new ArrayList();
while (true) {
    Integer i = new Integer(1);
    container.add(i);
}

если я положу что-то в конструктор Integer. В противном случае не может скомпилировать.

Другие вопросы по тегам