Mest inledande Java programmering kurser täcker inte Java högen . Efter allt , när klassen uppdrag är bara några rader kod , vad är behovet av att diskutera fysiskt minneshantering ? Högen kan dock bli en mycket stor affär när en stor GlassFish Java server projektet plötsligt ger heap fel till utvecklare använder NetBeans Integrated Development Environment ( IDE ) . Detta problem enkelt lösas genom mer effektiv programmering eller ändra konfigurationsinställningar . Java Heap
När ett Java -program börjar dess genomförande , ger JVM det en viss mängd systemminne som kallas Java högen . Den exakta mängden minne JVM kommer att tilldela ett program heap varierar från version till version . Varje gång programmet skapar en variabel eller en instans objekt , är dess data lagras i den här högen . Java-utvecklare kan anpassa hur stort ett upplag JVM kommer att skapa ett program när det börjar sin exekvering , men ett program kan inte skapa ett större eller mindre hög när den är igång .
Heap fel
heap fel händer när ett program försöker använda mer minne än är i sin högen . Om en heap är redan full med variabla och objekt information , då programmets försök att initiera en annan variabel eller initiera ett annat objekt kommer att generera en hög fel eftersom det inte finns mer utrymme för det . Till skillnad från äldre språk som kräver programmerare att dekonstruera sina egna objekt och variabler för att rensa upp utrymme i programmets minne , har JVM automatiserad sophämtning : När ett program når en punkt i sitt utförande där den inte kan uppmana en klass eller variabel igen, JVM kommer att radera sina uppgifter för att rensa utrymme för andra .
GlassFish Heap fel
webbsystem som använder GlassFish är oftast inte kakmått applikationer en användare enkelt nedladdningar distribuerar sedan på sin server . De är nästan alltid genereras för en specifik applikation som körs på en specifik server . Följaktligen utvecklarna vet exakt hur mycket minne deras programvara kommer att behöva i sin hög , och vara säker på att servern har tillräckligt med fysiskt minne för att generera en hög av den storleken . Heap fel från GlassFish programvara kommer i allmänhet från att överskrida en heap storlek , eller begära mer minne i högen än servern har fysiskt minne för att rymma . Addera NetBeans IDE
När utvecklare använder NetBeans IDE att koda sina GlassFish mjukvara , det är inget speciellt med IDE som orsakar eller förhindrar heap fel . När utvecklare distribuera sin mjukvara på en server , kommer de att manuellt ställa in sin stackstorlek med JVM . De kan dock justera storleken på högen som NetBeans IDE ger programvaran under testning på utvecklarens maskin . Programmerare kan ändra denna inställning i " netbeans.conf " fil i " netbeans-home/etc " katalogen . Ändring av antalet bredvid " J - XMX " i " netbeans_default_options = " line kommer att förändra NetBeans stackstorleken genererar det antal megabyte programmeraren anger .