Sobes.tech
Junior — Middle

Como é que a recolha automática de memória e a libertação são implementadas na linguagem Go?

sobes.tech IA

Resposta da IA

Na linguagem Go, a recolha automática e libertação de memória são implementadas através de um coletor de lixo incorporado. Go usa um algoritmo de rastreio e contagem de referências, que escaneia periodicamente a memória, identificando objetos aos quais já não há referências, libertando-os. Isto permite ao programador não se preocupar com a gestão manual de memória, reduzindo a probabilidade de fugas e erros.

Exemplo:

package main

func main() {
    s := make([]int, 1000000) // aloca memória
    _ = s
    // Após sair do escopo de s, o coletor de lixo libertará a memória automaticamente
}