Coleta de lixo
O coletor de lixo do .NET gerencia a alocação e a liberação de memória para seu aplicativo. Toda vez que você cria um novo objeto, o Common Language Runtime aloca memória para o objeto do heap gerenciado. Desde que exista espaço de endereço disponível no heap gerenciado, o runtime continua alocando espaço para novos objetos. No entanto, a memória não é infinita. No fim das contas, o coletor de lixo deve realizar uma coleta para liberar algum espaço na memória. O mecanismo de otimização do coletor de lixo determina o melhor momento para executar uma coleta com base nas alocações que estão sendo feitas. Quando o coletor de lixo executa uma coleta, ele verifica se há objetos no heap gerenciado que não estão mais sendo usados pelo aplicativo e realiza as operações necessárias para recuperar sua memória.
Nesta seção
Título | Descrição |
---|---|
Noções básicas da coleta de lixo | Descreve como funciona a coleta de lixo, como os objetos são alocados no heap gerenciado e outros conceitos principais. |
Coleta de lixo de estação de trabalho ou de servidor | Descreve as diferenças entre a coleta de lixo da estação de trabalho para aplicativos cliente e a coleta de lixo do servidor para aplicativos de servidor. |
Coleta de lixo em segundo plano | Descreve a coleta de lixo em segundo plano, que é a coleta de objetos de geração 0 e 1 enquanto a coleta de geração 2 está em andamento. |
O heap de objetos grandes | Descreve o LOH (heap de objeto grande) e como é feita a coleta de lixo de objetos grandes. |
Coleta de lixo e desempenho | Descreve as verificações de desempenho que você pode usar para diagnosticar problemas de desempenho e de coleta de lixo. |
Coletas induzidas | Descreve como fazer uma coleta de lixo ocorrer. |
Modos de latência | Descreve os modos de determinam o grau de intrusão da coleta de lixo. |
Otimização da hospedagem Web compartilhada | Descreve como otimizar a coleta de lixo em servidores compartilhados por vários sites pequenos. |
Notificações da coleta de lixo | Descreve como determinar quando uma coleta de lixo completa está se aproximando e quando ela é concluída. |
Monitoramento de recursos do domínio do aplicativo | Descreve como monitorar o uso de CPU e memória por um domínio do aplicativo. |
Referências fracas | Descreve os recursos que permitem que um objeto seja, simultaneamente, coletado pelo coletor de lixo e acessado pelo aplicativo. |
Referência
- System.GC
- System.GCCollectionMode
- System.GCNotificationStatus
- System.Runtime.GCLatencyMode
- System.Runtime.GCSettings
- GCSettings.LargeObjectHeapCompactionMode
- Object.Finalize
- System.IDisposable