? En haug i Java er en algoritme laget for å rense JavaScript med dynamisk allokert minne som ikke er referert til ledig plass. Med andre ord , er det som en selv- innsamling søppelhaugen som frigjør programmerere fra tildeling ubrukelige filer manuelt . Haugen funksjon i Java er en viktig del av programmering, og forstå det er avgjørende for effektiv og vellykket program skriftlig. Om Hauger
En haug fjerner et program unreferenced informasjon og lagrer den i en midlertidig binært tre . Lagret informasjon kan hentes fra den binære treet for en begrenset tid før den anses søppel . Når det er ansett som søppel , resirkulerer haugen det og tildeler den nylig ledig plass til der det trengs i programmet. Manuell bestemme unreferenced informasjon er utfordrende og tidkrevende . Algoritmen en haug bruker for å gjøre dette , noe som forenkler prosedyren og frigjøre en programmerer til å vie sin energi til viktigere programmering bekymringer. Dette gjør ikke bare lov å programmere mer effektiv , men det gjør selve programmet mer effektiv , så vel.
Heap Fragmentering
Hauger direkte bekjemper haug fragmentering . Heap fragmentering forekommer naturlig som et program går sin gang . Det skjer når referert og unreferenced informasjon mix sammen , noe som skaper en rot av uorganiserte levende minne - plassen okkupert av refererte informasjon - og døde minne, eller plass okkupert av unreferenced informasjon. Når disse to typer plass blanding passet sammen , har et program for å prosessere gjennom begge deler, noe som reduserer effektiviteten program . En haug organiserer levende og døde plass til en grei rekkefølge for å maksimere program effektivitet. Med andre ord, er en haug ansvarlig for defragmentering et programmets kjørbare og ikke- kjørbare informasjon.
Fordeler
Den største fordelen til heap er at det frigjør en programmerer tid og unngår feil . Programmerere kan lett tilbringe dager , selv uker , jage ned unreferenced informasjon for å fikse et program minneproblemer, fordi det krever manuelt gå gjennom hele linjen med kode for å finne feilene. Hvis en programmerer fjerner feil opplysning fra et program , kan det fører til uventede og uheldig feil . En haug sjelden , om noensinne, gjør en feil , og hvis den gjør det, er det lett å finne i den midlertidige binære treet.
Ulemper
Den primære ulempen med en haug er at det er sannsynlig å ta opp mer av prosessorkraft som kreves for å kjøre programmet . Med andre ord , dette legger et ekstra overhead funksjon som kan påvirke et program ytelse. Dette er fordi en haug har å holde styr på refererte informasjon mens jakt unreferenced filer for å fjerne på fly i løpet av programmets aktivering. Det tar prosessorkraft og tid til å utføre denne funksjonen . Men som søppel algoritmer bedre og bli mer effektive , er denne ulempen langsomt minkende , hevder Bill Venners , skribent for Java World.