Junior
Mis on prügikoristaja (Garbage Collector)?
sobes.tech AI
Vastus AI-lt
Jäätmekogur on mäluhaldusüsteemi komponent, mis automaatselt vabastab mälu, mida on hõivanud objektid, mida programm enam ei kasuta.
Põhilised tööpõhimõtted:
- Jälgimisalgoritmid: Jäätmekogur määrab, millised objektid on kättesaadavad (saadaval juurpunktidest, näiteks virnast või globaalsetest muutujatest) ja millised mitte.
- Puhastamine: Märgitud kui mitte-kättesaadavad objektid eemaldatakse ning nende hõivatud mälu tagastatakse vaba mälu basseinile edasiseks kasutamiseks.
Tavaliselt kasutatavad algoritmid:
- Mark and Sweep (märgista ja puhasta)
- Copying (kopeerimine)
- Generational (põlvkondlik)
- Reference Counting (viidete arvutamine)
Eelised:
- Vähendab mälu lekkimise tõenäosust.
- Lihtsustab mälu haldamist arendaja jaoks.
- Suurendab rakenduse usaldusväärsust.
Miinused:
- Võib põhjustada pause (Stop-the-world sündmused) kogumise ajal.
- Ebatäpselt prognoositav täitmise aeg.
- Võib kasutada täiendavaid süsteemiressursse.