Sobes.tech
Junior — Middle

Como difere o comportamento do coletor de lixo ao gerenciar objetos de 10 KB e 100 KB?

sobes.tech IA

Resposta da IA

Em C#, o coletor de lixo (GC) divide os objetos em gerações (Gen 0, Gen 1, Gen 2) e também trata separadamente objetos grandes (Heap de Objetos Grandes, LOH).

Objetos com até aproximadamente 85 KB são colocados no heap normal e participam na coleta de lixo por geração. Objetos maiores que 85 KB são considerados grandes e colocados no LOH.

Características:

  • Objetos pequenos (<85 KB): são criados e removidos com frequência, o GC os coleta mais frequentemente, permitindo liberar memória rapidamente.
  • Objetos grandes (>85 KB): são colocados no LOH, que é coletado com menos frequência, pois operações com ele são mais caras em tempo.

Assim, objetos de 10 KB serão coletados com mais frequência, enquanto objetos de 100 KB o serão com menos frequência, mas sua remoção consome mais recursos.