Método ICLRPolicyManager::SetActionOnTimeout
Especifica a ação de política que o CLR (Common Language Runtime) deve executar quando a operação especificada atinge o tempo limite.
Sintaxe
HRESULT SetActionOnTimeout (
[in] EClrOperation operation,
[in] EPolicyAction action
);
Parâmetros
operation
[in] Um dos valores de EClrOperation indicando a operação para a qual especificar o tempo limite da ação. Os seguintes valores têm suporte:
OPR_AppDomainUnload
OPR_ProcessExit
OPR_ThreadRudeAbortInCriticalRegion
OPR_ThreadRudeAbortInNonCriticalRegion
action
[in] Um dos valores EPolicyAction, indicando a ação de política a ser executada quando a operação atingir o tempo limite.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | SetActionOnTimeout 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 | Um tempo limite não pode ser definido para o operation especificado ou um valor inválido foi fornecido para operation . |
Comentários
O valor de tempo limite pode ser o tempo limite padrão definido pelo CLR ou um valor especificado pelo host em uma chamada para o método ICLRPolicyManager::SetTimeout.
Nem todos os valores de ação de política podem ser especificados como o comportamento de tempo limite para operações de CLR. SetActionOnTimeout
normalmente é usado apenas para escalar o comportamento. Por exemplo, um host pode especificar que as anulações de thread sejam transformadas em anulações de thread rudes, mas não podem especificar o oposto. A tabela abaixo descreve os valores válidos action
para valores operation
válidos.
Valor para operation |
Valores válidos para action |
---|---|
OPR_ThreadRudeAbortInNonCriticalRegion OPR_ThreadRudeAbortInCriticalRegion |
- eRudeAbortThread - eUnloadAppDomain - eRudeUnloadAppDomain - eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_AppDomainUnload | - eUnloadAppDomain - eRudeUnloadAppDomain - eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_ProcessExit | - eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
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