JavaScript · Avançado · Inglês · Técnico
garbage collector
Parte do motor que libera a memória de objetos inalcançáveis a partir das raízes. No V8 é geracional: objetos novos e antigos são coletados separadamente.
Onde usar
Aparece ao investigar pausas e consumo de memória. Em code review, guardar referências sem necessidade, como caches e listeners, impede a coleta, pois o objeto continua alcançável.
Em código
let obj = { dados: new Array(1e6).fill(0) };
obj = null; // sem referências: coletável
// terminal: node --trace-gc app.jsExemplos
The garbage collector can't free it because the cache still references it.
O garbage collector não consegue liberar porque o cache ainda o referencia.
Memory keeps growing until the garbage collector runs a major cycle.
A memória cresce até o garbage collector rodar um ciclo maior.
Cuidado
Achar que atribuir null à variável libera a memória na hora, já que a coleta ocorre quando o motor decide.
Sinônimos
GC, coletor de lixo