Sobes.tech
Junior

Čo je zberač odpadu (Garbage Collector)?

sobes.tech AI

Odpoveď od AI

Zberač odpadkov je súčasťou systému správy pamäte, ktorý automaticky uvoľňuje pamäť obsadenú objektmi, ktoré už program nepoužíva.

Hlavné princípy fungovania:

  • Algoritmy sledovania: Zberač odpadkov určuje, ktoré objekty sú dostupné (dostupné z koreňových bodov, ako je zásobník alebo globálne premenné) a ktoré nie.
  • Čistenie: Objekty označené ako nedostupné sú odstránené a ich obsadená pamäť je vrátená do poolu voľnej pamäte na ďalšie použitie.

Bežné algoritmy:

  • Mark and Sweep (označenie a čistenie)
  • Copying (kopírovanie)
  • Generational (generácie)
  • Reference Counting (čítač odkazov)

Výhody:

  • Znižuje pravdepodobnosť únikov pamäte.
  • Zjednodušuje správu pamäte pre vývojára.
  • Zvyšuje spoľahlivosť aplikácie.

Nevýhody:

  • Môže spôsobovať prestoje (události Stop-the-world) počas zberu.
  • Nepredvídateľný čas vykonávania.
  • Môže spotrebovať ďalšie systémové zdroje.