Domov audio Čo je zberateľ odpadu? - definícia z technológie

Čo je zberateľ odpadu? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená zberateľ odpadu?

Zberač odpadu je softvér, ktorý vykonáva automatickú správu pamäte. Jeho úlohou je uvoľniť nevyužitú pamäť a zabezpečiť, aby počas jej používania nebola uvoľnená žiadna pamäť. Niektoré jazyky, ako napríklad jazyky Java a .NET, majú automatický zber odpadu, zatiaľ čo iné ako C / C ++ vyžadujú, aby programátor manuálne spravoval pamäť.

Techopedia vysvetľuje zberateľa odpadu

Zbierka odpadkov bola prvýkrát predstavená tvorcom Lispu Johnom McCarthym, aby uľahčila manuálnu správu pamäte pri práci s jazykom Lisp.

Tri hlavné techniky používané zberačom odpadu na vykonanie automatickej správy pamäte sú nasledujúce:

  • Počítanie referencií - odkaz na každý objekt sa počíta pomocou premenné počítadla. Keď počítadlo dosiahne nulu, znamená to, že predmet už nie je potrebný, a teda sa recykluje.
  • Označiť a zamiesť - Vo všetkých oblastiach údajov sa vykoná rekurzívny prechod všetkých prístupných objektov a označia sa dosiahnuteľné objekty. Neoznačené objekty sa potom recyklujú.
  • Zastaviť a skopírovať - ​​Hromada pamäte je rozdelená na dve časti: časť obsahujúcu objekty a prázdnu časť, kde sa objekty prenášajú (kopírujú), ak sa zistí, že sú označené. Neoznačené objekty v prvej časti sa recyklujú vyprázdnením.

Keď sa uvoľní blok pamäte priradený ukazovateľovi / objektu, ukazovateľ / objekt sa musí resetovať na nulovú hodnotu; inak to visí, tj ukazuje na neplatný pamäťový blok.

Zber odpadu pomáha znižovať chyby a bezpečnostné riziká spôsobené problémami s únikom ukazovateľov a únikom pamäte.

Nevýhody použitia zberača odpadu zahŕňajú ďalšie režijné náklady na zdroje a výkon. Spustenie zberača odpadu môže tiež spomaliť systém a tým znížiť jeho výkon.

Čo je zberateľ odpadu? - definícia z technológie