Hjem Audio Hva er en søppelsamler? - definisjon fra techopedia

Hva er en søppelsamler? - definisjon fra techopedia

Innholdsfortegnelse:

Anonim

Definisjon - Hva betyr Garbage Collector?

En søppeloppsamler er et programvare som utfører automatisk minnestyring. Jobben er å frigjøre ubrukt minne og sikre at ikke noe minne frigjøres mens det fremdeles er i bruk. Noen språk som Java og .NET språk har automatisk søppelinnsamling, mens andre som C / C ++ krever at programmereren manuelt administrerer minne.

Techopedia forklarer Garbage Collector

Søppelkolleksjonen ble først introdusert av Lisp-skaperen John McCarthy for å lette den manuelle minnestyringen når du jobber med Lisp-språket.

De tre hovedteknikkene som brukes av en søppelsamler for å utføre automatisk minnestyring, er som følger:

  • Referansetelling - Henvisningen til hvert objekt telles ved hjelp av en tellervariabel. Når telleren når null, betegner den at objektet ikke lenger er nødvendig og dermed blir resirkulert.
  • Merk og fei - En rekursiv gjennomgang av alle tilgjengelige objekter blir utført i alle dataregioner, og tilgjengelige objekter er merket. De umerkede objektene blir deretter resirkulert.
  • Stopp og kopier - Minnebunken er delt inn i to seksjoner: en seksjon som inneholder objektene og en tom seksjon der objektene overføres (kopieres) hvis det er funnet å være merket. De umerkede objektene i den første delen gjenvinnes ved å tømme den.

Når en blokk med minne som er tilordnet en peker / objekt er frigjort, må pekeren / objektet tilbakestilles til en nullverdi; Ellers dingler den, dvs. peker på en ugyldig minneblokk.

Søppelinnsamling bidrar til å redusere feil og sikkerhetsrisiko forårsaket av dinglende pekere og problemer med minnelekkasje.

Ulempene med å bruke en søppelsamler inkluderer det ekstra overhead på ressurser og ytelse. Å drive en søppeloppsamler kan også bremse systemet og dermed redusere ytelsen.

Hva er en søppelsamler? - definisjon fra techopedia