Partilhar via


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 operationou 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

Ver também