Queria saber como funciona o gerenciamento da memória em Go. Estou acostumado a programar em Java onde a JVM toma conta de tudo. Aqui seria como no C onde eu mesmo aloco e desaloco memória?
Queria saber como funciona o gerenciamento da memória em Go. Estou acostumado a programar em Java onde a JVM toma conta de tudo. Aqui seria como no C onde eu mesmo aloco e desaloco memória?
O Garbage collector é um recurso já presente em muitas linguagens e que vem para facilitar a vida do desenvolvedor, gerenciando a memória da aplicação. Mas normalmente as linguagens com Garbage collection possuem certas desvantagens, entre elas está o consumo de recursos adicionais, impactos de desempenho e possíveis paralisações na execução do programa. Isso ocorre devido ao processo do garbage collector ser apartado das linguagens. Por outro lado, com o objetivo de priorizar a performance, o Garbage collector do Go está embutido no core da linguagem, isso significa que está otimizado para os recursos da linguagem. Tornando o gerenciamento de memória de Go muito mais rápido que o das demais linguagens.
Para maiores informações sugiro visitar este site
https://www.infoq.com/br/presentations/entendendo-alocacao-de-memoria-no-go/
Oi Felipe, O Garbage collector do Go está embutido no core da linguagem, isso significa que está otimizado para os recursos da linguagem. Tornando o gerenciamento de memória de Go muito mais rápido que o das demais linguagens.
Memory Safe: O Go tem uma gestão própria de memória e threads transparente ao programador, fazendo a gestão de forma automática, evitando os famosos problemas da linguagem C de alocação e invasão de memória.