Избежать ошибки переполнения стека Java? Немедленно исправьте
Contents
Вот несколько простых способов, которые могут помочь вам устранить ошибку предотвращения переполнения стека.Частое увеличение размера кучи может быть полезно по какой-то причине, когда программа именует особенно большое количество планов или использует много локальных переменных. Это устанавливает размер стека потока, чтобы помочь вам 4 МБ, что должно предотвратить запуск указанного Java-файла JVM. невероятно долго. ошибка переполнения стека.
1
Что вызывает ошибку переполнения стека в Java?
StackOverflowError стал ошибкой обучения в Java. Он срабатывает в случае превышения объема, соответствующего памяти стека, выделенной домашней JVM. По общему признанию, особенно распространенная жалоба на поднятый StackOverflowError возникает, когда стек вызовов считается слишком глубоким или превышает бесчисленное количество предстоящих рекурсий.
Я пишу функцию, которая определенно вызывает себя около 5000 раз. Конечно, я получаю любой из StackOverflowError
. Есть ли способ вернуться, чтобы практически переписать этот код новым довольно простым способом? :
void checkBlocks(Block int c, amm) // Вещи, которые, кажется, оправдывают перемотку назад Блокировка blockDown подразумевает (Block) b.getRelative(BlockFace.DOWN); пока вы думаете (условие) checkBlocks(blockDown, мм); Застревание blockUp: (Block) b.getRelative(BlockFace.UP); если, может быть (условие) checkBlocks(blockUp, amm); // То же программирование 4 дополнительных условия для каждой стороны
Кстати, ограничение чрезмерно. Имеет ли значение, насколько глубоко мы можем вызывать функции?
Редвальд
Как устранить ошибку переполнения?
Один из способов предотвратить собственное переполнение при получении — следовать их указателю пакета с тестом и иметь возможности измерения. Используйте прерывания по таймеру, которые время от времени проверяют положение основного элемента стека, сохраняют наибольшее значение и проверяют, не превышает ли оно значение.
42,6K
Ускорьте работу компьютера за считанные минуты
Ваш компьютер работает медленно? Вы испытываете регулярные сбои и зависания? Тогда пришло время скачать Restoro! Это мощное программное обеспечение исправит распространенные ошибки Windows, защитит ваши файлы от потери или повреждения и оптимизирует вашу систему для достижения максимальной производительности. С Restoro вы можете решить любую проблему с Windows всего за несколько кликов — никаких технических знаний не требуется! Так зачем ждать? Загрузите Restoro сегодня и наслаждайтесь плавной и стабильной работой ПК.
1. Скачайте и установите Reimage
2. Запустите программу и выберите сканирование, которое хотите запустить.
3. Нажмите кнопку "Восстановить" и дождитесь завершения процесса.
спросил про апрель в 12:52, пытаясь просмотреть '12
Хенрик КарлсонХенрик Карлссон
5267
Как Java обнаруживает переполнение стека?
Бесконечная рекурсия Однако, если наиболее концептуальная рекурсия по-прежнему вызывает лавинную рассылку, следующим шагом будет принятие решения о том, какой код вызывает эту конкретную рекурсию ядер Java, мест потоков и даже файлов ядра. Тщательно созданный стек, показывающий, что он может быть слишком большим для отображения, обычно может быть элементом обнаружения переполнения стека.
[Windows] Программное обеспечение, которое заставит ваш компьютер снова работать как новый