Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Especifica a ação de política que o CLR (Common Language Runtime) deve executar quando ocorre a falha especificada.
Sintaxe
HRESULT SetActionOnFailure (
[in] EClrFailure failure,
[in] EPolicyAction action
);
Parâmetros
failure
[in] Um dos valores EClrFailure, indicando o tipo de falha para o qual agir.
action
[in] Um dos valores EPolicyAction, indicando a ação a ser tomada quando ocorre uma falha. Para uma lista de valores compatíveis, confira a seção Comentários.
Valor Retornado
| HRESULT | Descrição |
|---|---|
| S_OK |
SetActionOnFailure retornado com êxito. |
| HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado em um processo, ou o CLR está em um estado no qual não pode executar código gerenciado ou processar a chamada com êxito. |
| HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
| HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
| HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
| E_FAIL | Uma falha catastrófica desconhecida ocorreu. Depois que um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
| E_INVALIDARG | Uma ação de política não pode ser definida para a operação especificada ou uma ação de política inválida foi especificada para a operação. |
Comentários
Por padrão, o CLR gera uma exceção quando falha ao alocar um recurso como memória.
SetActionOnFailure permite que o host substitua esse comportamento especificando a ação de política a ser tomada após a falha. A tabela a seguir mostra as combinações de valores EClrFailure (colunas) e EPolicyAction (linhas) compatíveis.
FAIL_NonCriticalResource |
FAIL_CriticalResource |
FAIL_FatalRuntime |
FAIL_OrphanedLock |
FAIL_StackOverflow |
FAIL_AccessViolation |
FAIL_CodeContract |
|
|---|---|---|---|---|---|---|---|
eNoAction |
X | X | N/D | ||||
eThrowException |
X | X | N/D | ||||
eAbortThread |
X | X | N/D | X | |||
eRudeAbortThread |
X | X | N/D | X | |||
eUnloadAppDomain |
X | X | X | N/D | X | ||
eRudeUnloadAppDomain |
X | X | X | X | N/D | X | |
eExitProcess |
X | X | X | X | N/D | X | |
eFastExitProcess |
X | X | X | X | N/D | ||
eRudeExitProcess |
X | X | X | X | X | N/D | |
eDisableRuntime |
X | X | X | X | X | N/D |
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0