Enumeração de EMemoryCriticalLevel
Contém valores que indicam o impacto de uma falha quando uma alocação de memória específica foi solicitada mas não pode ser satisfeita.
typedef enum {
eTaskCritical = 0,
eAppDomainCritical = 1,
eProcessCritical = 2
} EMemoryCriticalLevel;
Membros
Membro |
Descrição |
---|---|
eAppDomainCritical |
Indica que a alocação é crítica para a execução de código gerenciado no domínio que solicitou a alocação. Se a memória não pode ser alocada, o CLR não garante que o domínio é ainda é utilizável. O host decide qual ação executar quando a alocação não puder ser satisfeita. Ele pode instruir o CLR para anular a AppDomain automaticamente, ou permitir que ele seja executado chamando métodos no ICLRPolicyManager. |
eProcessCritical |
Indica que a alocação é fundamental para a execução de código gerenciado no processo. Esse valor é usado durante a inicialização e durante a execução de finalizadores. Se a memória não pode ser alocada, o CLR não pode operar no processo. Se a alocação falhar, o CLR é efetivamente desativado. Todas as chamadas subseqüentes no CLR falharem com HOST_E_CLRNOTAVAILABLE. |
eTaskCritical |
Indica que a alocação é fundamental para a execução da tarefa que solicitou a alocação. Se a memória não pode ser alocada, o CLR não garante que a tarefa pode ser executada. No caso de falha, o CLR gera um ThreadAbortException no segmento de sistema de operação física. |
Comentários
Os métodos de alocação de memória definidos na IHostMemoryManager e IHostMAlloc interfaces levar um parâmetro deste tipo. Dependendo da gravidade da falha, um host pode decidir se a falha de solicitação de alocação imediatamente ou esperar até que podem ser atendida.
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: MSCorEE.h
Biblioteca: Mscoree
.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0
Consulte também
Referência
Interface de ICLRMemoryNotificationCallback