Що станеться, коли у вас закінчиться пам’ять купи?

Він може легко стати повним, і коли це станеться, розпочато вивіз сміття. Це коли об’єкти, які більше не використовуються, видаляються, щоб звільнити місце для нових об’єктів. На відміну від стека Java, де виділення пам’яті здійснюється під час компіляції вашої програми, у купі вона виділяється під час виконання програми.30 грудня 2019 р.

Коли купа наповнюється, сміття збирається. Під час збирання сміття об'єкти, які більше не використовуються, очищаються, звільняючи місце для нових об'єктів.

Купа не необмежена – ви керуєте нею під час запуску програми, і ви не можете зберігати в пам’яті більше об’єктів, ніж це дозволяє. Якщо купа заповнена і ви створюєте ще один об’єкт, ви можете отримати помилку OutOfMemory.

OutOfMemoryError — це помилка під час виконання в Java, яка виникає, коли віртуальна машина Java (JVM) не може виділити об’єкт через недостатній простір у купі Java. Java Garbage Collector (GC) не може звільнити місце, необхідне для нового об’єкта, що спричиняє Java. мова OutOfMemoryError .

Максимальний розмір купи за замовчуванням становить 1/4 фізичної пам’яті комп’ютера або 1 ГБ (залежно від того, що менше).. Максимальний розмір купи можна змінити за допомогою -Xmx.

Властивість форми: бінарна купа є повним бінарним деревом; тобто, усі рівні дерева, окрім, можливо, останнього (найглибшого), повністю заповнені, і, якщо останній рівень дерева не завершено, вузли цього рівня заповнюються зліва направо.

Оцініть статтю