Junior — Middle
Šta su koreni sakupljača smeća (GC Roots) i kako utiču na proces automatskog upravljanja memorijom?
sobes.tech АИ
Одговор од АИ
Koreni GC su objekti koji se smatraju ulaznim tačkama za sakupljač smeća prilikom određivanja dostupnosti objekata u memoriji. Oni služe kao početna tačka za obilazak grafa objekata.
U Androidu (i u Javi općenito), koreni GC mogu biti:
- Referencije sa steka niti (lokalne promenljive i parametri metoda)
- Statička polja klasa
- Referencije iz JNI (Java Native Interface)
- Aktivni objekti u sistemskim klasama
Sakupljač smeća počinje obilazak od korena GC i označava sve objekte do kojih se može doći putem lanca referenci. Objekti do kojih se ne može doći smatraju se neiskorišćenim i mogu biti uklonjeni.
Na ovaj način, koreni GC utiču na proces upravljanja memorijom, određujući koji objekti se smatraju živim i ne podliježu sakupljanju.