Junior — Middle
Čo sú korene zberača odpadkov (GC Roots) a ako ovplyvňujú proces automatického riadenia pamäte?
sobes.tech AI
Odpoveď od AI
Korene GC sú objekty, ktoré sa považujú za vstupné body pre zberač odpadu pri určovaní dostupnosti objektov v pamäti. Slúžia ako východiskový bod pre prechádzanie grafu objektov.
V Androide (a všeobecne v Jave) môžu byť korene GC:
- Odkazy zo zásobníka vlákien (lokálne premenné a parametre metód)
- Statické polia tried
- Odkazy z JNI (Java Native Interface)
- Aktívne objekty v systémových triedach
Zberač odpadu začína prechádzaním od koreňov GC a označuje všetky objekty, ku ktorým je možné sa dostať cez reťazec odkazov. Nepoužiteľné objekty sa považujú za nevyužité a môžu byť odstránené.
Týmto spôsobom ovplyvňujú korene GC proces správy pamäte, určujúc, ktoré objekty sú považované za živé a ktoré nie sú zbierané.