Junior — Middle
Jak funguje garbage collector a jaké oblasti paměti čistí: heap nebo stack?
sobes.tech AI
Odpověď od AI
V Go je Garbage Collector (smetiči) automaticky uvolňuje paměť, která již není programem používána. Pracuje s oblastí paměti heap, kde jsou umístěny dynamicky alokované objekty.
Zásobník (stack) je oblast paměti pro místní proměnné a volání funkcí, která je automaticky řízena při vstupu a výstupu z funkcí, a garbage collector ji nečistí.
Princip fungování garbage collectoru v Go je založen na algoritmu sledování dosažitelnosti: najde všechny objekty dostupné z kořenových bodů (zásobník, globální proměnné) a odstraní ty, na které již nejsou odkazy.
Tímto způsobem garbage collector čistí heap, a zásobník je řízen systémem volání a je automaticky uvolněn.