Partager via


ICLRPolicyManager::SetActionOnTimeout, méthode

Spécifie l’action de stratégie que le Common Language Runtime (CLR) doit effectuer lorsque l’opération spécifiée expire.

Syntaxe

HRESULT SetActionOnTimeout (  
    [in] EClrOperation operation,  
    [in] EPolicyAction action  
);  

Paramètres

operation
[in] Une des valeurs EClrOperation, indiquant l’opération pour laquelle spécifier l’action de délai d’attente. Les valeurs suivantes sont admises :

  • OPR_AppDomainUnload

  • OPR_ProcessExit

  • OPR_ThreadRudeAbortInCriticalRegion

  • OPR_ThreadRudeAbortInNonCriticalRegion

action
[in] Une des valeurs EPolicyAction, indiquant l’action de stratégie à entreprendre lorsque l’opération expire.

Valeur de retour

HRESULT Description
S_OK SetActionOnTimeout retourné.
HOST_E_CLRNOTAVAILABLE Le CLR n’a pas été chargé dans un processus ou son état ne lui permet pas d’exécuter du code managé ni de traiter l’appel correctement.
HOST_E_TIMEOUT L’appel a expiré.
HOST_E_NOT_OWNER L’appelant n’est pas propriétaire du verrou.
HOST_E_ABANDONED Un événement a été annulé alors qu’un thread ou une fibre bloqué l’attendait.
E_FAIL Une défaillance catastrophique inconnue s’est produite. Après qu’une méthode retourne E_FAIL, le CLR n’est plus utilisable dans le processus. Les appels suivants aux méthodes d’hébergement renvoient HOST_E_CLRNOTAVAILABLE.
E_INVALIDARG Aucun délai d’expiration ne peut être défini pour le operation spécifié, ou une valeur non valide a été fournie pour operation.

Notes

La valeur du délai d’expiration peut être le délai d’expiration par défaut défini par le CLR ou une valeur spécifiée par l’hôte dans un appel à la méthode ICLRPolicyManager::SetTimeout.

Toutes les valeurs d’action de stratégie ne peuvent pas être spécifiées comme comportement de délai d’expiration pour les opérations CLR. SetActionOnTimeout est généralement utilisé uniquement pour élever le comportement. Par exemple, un hôte peut spécifier que les abandons de threads sont transformés en abandons de thread grossiers, mais ne peuvent pas spécifier l’inverse. Le tableau ci-dessous décrit les valeurs action valides pour les valeurs operation valides.

Valeur de operation Valeurs valides pour 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

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.h

Bibliothèque : incluse en tant que ressource dans MsCorEE.dll

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi