Partilhar via


Método de ICLRPolicyManager::SetActionOnFailure

Especifica a ação de diretiva, que o common language runtime (CLR) deve tomar quando ocorre a falha especificada.

HRESULT SetActionOnFailure (
    [in] EClrFailure   failure,
    [in] EPolicyAction action
);

Parâmetros

  • failure
    [in] Uma da EClrFailure valores, indicando o tipo de falha para o qual deseja agir.

  • action
    [in] Dentre as EPolicyAction valores, indicando que a ação a ser executada quando ocorre uma falha. Para obter uma lista de valores suportados, consulte a seção comentários.

Valor de retorno

HRESULT

Descrição

S_OK

SetActionOnFailureretornado com êxito.

HOST_E_CLRNOTAVAILABLE

O CLR não foi carregado em um processo ou o CLR é em um estado em que ele não é possível executar código gerenciado ou processar a chamada com êxito.

HOST_E_TIMEOUT

A chamada foi esgotado.

HOST_E_NOT_OWNER

O chamador não possui o bloqueio.

HOST_E_ABANDONED

Um evento foi cancelado, enquanto um segmento bloqueado ou fibra estava esperando por ele.

E_FAIL

Ocorreu uma falha catastrófica desconhecida. Depois de um método retornar E_FAIL, o CLR não é usável dentro do processo. As chamadas subseqüentes para hospedar os métodos retornam HOST_E_CLRNOTAVAILABLE.

E_INVALIDARG

Uma ação da política não pode ser definida para a operação especificada ou uma ação de política inválido foi especificada para a operação.

Comentários

Por padrão, o CLR lança uma exceção quando não consegue alocar um recurso, como memória. SetActionOnFailurepermite que o host substituir esse comportamento especificando-se a ação de diretiva a seguir em caso de falha. A tabela a seguir mostra as combinações de EClrFailure e EPolicyAction valores que são suportados. (O prefixo FAIL_ é omitido do EClrFailure valores.)

NonCriticalResource

CriticalResource

FatalRuntime

OrphanedLock

StackOverflow

AccessViolation

CodeContract

eNoAction

X

X

N/A

eThrowException

X

X

N/A

eAbortThread

X

X

N/A

X

eRudeAbortThread

X

X

N/A

X

eUnloadAppDomain

X

X

X

N/A

X

eRudeUnloadAppDomain

X

X

X

X

N/A

X

eExitProcess

X

X

X

X

N/A

X

eFastExitProcess

X

X

X

X

N/A

eRudeExitProcess

X

X

X

X

X

N/A

eDisableRuntime

X

X

X

X

X

N/A

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso em 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

Enumeração de EClrFailure

Enumeração de EPolicyAction

Interface de ICLRControl

Interface ICLRPolicyManager

Histórico de alterações

Date

History

Motivo

Julho de 2010

Corrigido as combinações permitidas de EClrFailure e EPolicyAction valores e colocá-los em uma tabela.

Correção de bug de conteúdo.