Partilhar via


Enumeração EMemoryCriticalLevel

Contém valores que indicam o impacto de uma falha quando uma alocação de memória específica foi pedida, mas não pode ser satisfeita.

Syntax

typedef enum {  
    eTaskCritical      = 0,  
    eAppDomainCritical = 1,  
    eProcessCritical   = 2  
} EMemoryCriticalLevel;  

Membros

Membro Description
eAppDomainCritical Indica que a alocação é fundamental para a execução de código gerido no domínio que pediu a alocação. Se não for possível alocar memória, o CLR não pode garantir que o domínio ainda é utilizável. O anfitrião decide que medidas tomar quando a alocação não pode ser satisfeita. Pode instruir o CLR a abortar automaticamente AppDomain ou permitir que continue em execução ao chamar métodos em ICLRPolicyManager.
eProcessCritical Indica que a alocação é fundamental para a execução do código gerido no processo. Este valor é utilizado durante o arranque e ao executar finalizadores. Se não for possível alocar memória, o CLR não poderá funcionar no processo. Se a alocação falhar, o CLR será efetivamente desativado. Todas as chamadas subsequentes para o CLR falham com HOST_E_CLRNOTAVAILABLE.
eTaskCritical Indica que a alocação é fundamental para executar a tarefa que pediu a alocação. Se não for possível atribuir memória, o CLR não pode garantir que a tarefa possa ser executada. Em caso de falha, o CLR gera um ThreadAbortException no thread do sistema de operações físicas.

Observações

Os métodos de alocação de memória definidos nas interfaces IHostMemoryManager e IHostMAlloc assumem um parâmetro deste tipo. Dependendo da gravidade de uma falha, um anfitrião pode decidir se falha o pedido de alocação imediatamente ou se aguarda até que possa ser satisfeito.

Requisitos

Plataformas: Veja Requisitos do Sistema.

Cabeçalho: MSCorEE.h

Biblioteca: MSCorEE.dll

.NET Framework Versões: Disponível desde 2.0

Ver também