Senior
O que é o garbage collector em Go?
sobes.tech IA
Resposta da IA
O coletor de lixo (GC) em Go é um mecanismo automático de gestão de memória que liberta objetos não utilizados para evitar fugas de memória. Go usa um coletor de lixo concorrente, acionado por gatilho e com baixa latência, que funciona em paralelo com o thread principal.
O GC em Go rastreia objetos aos quais não há mais referências e liberta a memória que ocupam. Isso permite aos desenvolvedores não se preocuparem com a gestão manual de memória, reduzindo a probabilidade de erros como libertações duplas ou fugas.
Exemplo:
package main
import "fmt"
func main() {
s := make([]int, 1000000) // aloca uma grande fatia
fmt.Println(len(s))
// Após sair da função, s torna-se inacessível e será coletado pelo GC
}
Aqui, após a conclusão da função, a memória ocupada pela fatia será automaticamente libertada pelo coletor de lixo.