ExpertiDict

JavaScript · Avançado · Inglês · Técnico

FinalizationRegistry

/ˌfaɪnəlɪˈzeɪʃən ˈɹɛdʒɪstɹi/substantivo

Registro que chama um callback depois que um objeto registrado é coletado, permitindo limpar recursos associados. O momento, e até a execução, não são garantidos.

Onde usar

Usado em bibliotecas para liberar recursos nativos ou entradas de cache. Em code review, desencoraja-se qualquer lógica essencial nele, pois o motor pode nunca chamar o callback.

Em código

const reg = new FinalizationRegistry((id) => {
  console.log('coletado', id);
});
let obj = { dados: 1 };
reg.register(obj, 'obj-1');
obj = null; // talvez um dia chame o callback

Exemplos

The registry frees the native handle after the object is collected.

O registry libera o handle nativo depois que o objeto é coletado.

Never rely on FinalizationRegistry for critical cleanup.

Nunca dependa do FinalizationRegistry para limpeza crítica.

Cuidado

Usar como substituto de try finally ou de métodos explícitos como close.

Veja também

Todos os termos de JavaScript