Senior
Ce este colectorul de gunoi în Go?
sobes.tech AI
Răspuns de la AI
Colectorul de gunoi (GC) în Go este un mecanism automat de gestionare a memoriei care eliberează obiectele neutilizate pentru a preveni scurgerile de memorie. Go utilizează un colector de gunoi concurent, declanșabil și cu latență scăzută, care funcționează în paralel cu firul principal de execuție.
GC în Go urmărește obiectele pentru care nu mai există referințe și eliberează memoria ocupată de acestea. Acest lucru permite dezvoltatorilor să nu se îngrijoreze de gestionarea manuală a memoriei, reducând probabilitatea de erori precum eliberarea dublă sau scurgerile.
Exemplu:
package main
import "fmt"
func main() {
s := make([]int, 1000000) // alocă o bucată mare
fmt.Println(len(s))
// După ieșirea din funcție, s devine inaccesibil și va fi colectat de GC
}
Aici, după finalizarea funcției, memoria ocupată de slice va fi eliberată automat de colectorul de gunoi.