Как я могу воспроизвести ошибку переполнения стека исключений в Java

Как я могу воспроизвести ошибку EXCEPTION_STACK_OVERFLOW в Java.

PS: Я не говорю об ошибке StackOverflowError в Java, которая изящно закрывает JVM. Я говорю об ошибке EXCEPTION_STACK_OVERFLOW.журнал, который вызывает сбой JVM.

3 ответов


большинство EXCEPTION_STACK_OVERFLOW ошибки, которые я нашел до сих пор, происходят в собственном коде за пределами JVM. Грохот внутри JVM стоит отчета об ошибке и будет исправлена. Или вам нужен (неизвестный) эксплойт?

таким образом, самым простым и надежным способом было бы написать родную библиотеку с некоторым кодом, который заставляет JVM аварийно завершать работу и вызывать это с JNI.

(общий ответ, я на самом деле не знаю как это сделать точно. Невозможно сделать только с кодом java;))


public static void stackoverflow()
{
     stackoverflow();
}

позвоните и наслаждайтесь: D


удар стека:

public static void main(String[] args) {
    main(null);
}

Blow куча:

public static void main(String[] args) {
    List<String> list = new ArrayList<String>();
    while(true) list.add(new String("boom"));
}