Método ICLRPolicyManager::SetActionOnTimeout
Especifica a ação de política que o runtime de linguagem comum (CLR) deve executar quando a operação especificada excede o limite de tempo.
Sintaxe
HRESULT SetActionOnTimeout (
[in] EClrOperation operation,
[in] EPolicyAction action
);
Parâmetros
operation
[in] Um dos valores de EClrOperation , que indica a operação para a qual especificar a ação de tempo limite. São suportados os seguintes valores:
OPR_AppDomainUnload
OPR_ProcessExit
OPR_ThreadRudeAbortInCriticalRegion
OPR_ThreadRudeAbortInNonCriticalRegion
action
[in] Um dos valores de EPolicyAction , que indica a ação de política a ser tomada quando a operação exceder o limite de tempo.
Devolver Valor
HRESULT | Description |
---|---|
S_OK | SetActionOnTimeout devolvido com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado para um processo ou o CLR está num estado em que não pode executar o código gerido ou processar a chamada com êxito. |
HOST_E_TIMEOUT | A chamada excedeu o limite de tempo. |
HOST_E_NOT_OWNER | O autor da chamada não é o proprietário do bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera. |
E_FAIL | Ocorreu uma falha catastrófica desconhecida. Depois de um método devolver E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE. |
E_INVALIDARG | Não é possível definir um tempo limite para o especificado operation ou foi fornecido um valor inválido para operation . |
Observações
O valor de tempo limite pode ser o tempo limite predefinido definido pelo CLR ou um valor especificado pelo anfitrião numa 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 CLR. SetActionOnTimeout
normalmente, é utilizado apenas para escalar o comportamento. Por exemplo, um anfitrião pode especificar que os abortos de threads sejam transformados em abortações de threads rudes, mas não pode especificar o oposto. A tabela abaixo descreve os valores válidos action
para valores válidos operation
.
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: Veja Requisitos de Sistema.
Cabeçalho: MSCorEE.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 2.0