Enumeração EMemoryCriticalLevel
Contém valores que indicam o impacto de uma falha quando uma alocação de memória específico 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 executar código gerenciado no domínio que solicitou a alocação. Se não é possível alocar memória, o CLR não garante que o domínio ainda pode é utilizado. O host decide que ação executar quando a alocação não puder ser satisfeita. Ele pode instruir o CLR para anular o AppDomain automaticamente, ou permitir para manter em execução 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 não é possível alocar memória, o CLR não pode operar no processo. Se a alocação falhar, o CLR é efetivamente desabilitado. Todas as chamadas subseqüentes para o CLR falham com HOST_E_CLRNOTAVAILABLE. |
eTaskCritical |
Indica que a alocação é essencial para executar a tarefa que solicitou a alocação. Se não é possível alocar memória, o CLR não garante que a tarefa pode ser executada. No caso de falha, o CLR gera um ThreadAbortException na thread do sistema físico de operação. |
Comentários
Os métodos de alocação de memória definidos no IHostMemoryManager and IHostMAlloc interfaces recebem um parâmetro deste tipo. Dependendo da gravidade de uma falha, um host pode decidir se falhe a solicitação de alocação imediatamente ou esperar até que podem ser atendida.
Requisitos
Plataformas: See Requisitos de sistema do .NET framework.
Cabeçalho: MSCorEE.idl
Biblioteca: MSCorEE.dll
.NET Framework Versions: 3.5 SP1, 3,5, 3.0 SP1, 3.0, 2.0 SP1, 2.0
Consulte também
Referência
Interface ICLRMemoryNotificationCallback