Hjem Lyd Hvad er en affaldsopsamler? - definition fra techopedia

Hvad er en affaldsopsamler? - definition fra techopedia

Indholdsfortegnelse:

Anonim

Definition - Hvad betyder Garbage Collector?

En skraldesamler er et stykke software, der udfører automatisk hukommelsesstyring. Dets job er at frigøre ubrugt hukommelse og sikre, at der ikke frigøres nogen hukommelse, mens den stadig er i brug. Nogle sprog såsom Java og .NET sprog har automatisk indsamling af skrald, mens andre såsom C / C ++ kræver, at programmereren manuelt administrerer hukommelse.

Techopedia forklarer Garbage Collector

Affaldssamling blev først introduceret af Lisp-skaberen John McCarthy for at lette den manuelle hukommelsesstyring, når man arbejder med Lisp-sproget.

De tre hovedteknikker, der bruges af en skraldesamler til at udføre automatisk hukommelsesstyring, er som følger:

  • Henvisningstælling - Henvisningen til hvert objekt tælles ved hjælp af en tællervariabel. Når tælleren når nul, angiver den, at objektet ikke længere er nødvendigt og derfor genanvendes.
  • Markering og fejning - En rekursiv gennemgang af alle tilgængelige objekter udføres i alle dataregioner, og tilgængelige objekter markeres. De umærkede objekter genanvendes derefter.
  • Stop og kopi - Hukommelseshaugen er opdelt i to sektioner: et afsnit, der indeholder objekterne og et tomt afsnit, hvor objekterne overføres (kopieres), hvis det konstateres, at de er markeret. De umærkede objekter i det første afsnit genanvendes ved at tømme dem.

Når en hukommelsesblok, der er tildelt en markør / objekt, er blevet frigivet, skal markøren / objektet nulstilles til en nullværdi; Ellers dingler det, dvs. peger på en ugyldig hukommelsesblok.

Affaldsindsamling hjælper med at reducere fejl og sikkerhedsrisici forårsaget af dinglende pegepinde og problemer med hukommelseslækage.

Ulemperne ved at bruge en skraldesamler inkluderer den ekstra omkostning på ressourcer og ydeevne. At køre en affaldsopsamler kan også bremse systemet og dermed mindske dets ydelse.

Hvad er en affaldsopsamler? - definition fra techopedia