Метод ICLRPolicyManager::SetDefaultAction
Указывает действие политики, которое должна выполнять среда CLR при выполнении указанной операции.
Синтаксис
HRESULT SetDefaultAction (
[in] EClrOperation operation,
[in] EPolicyAction action
);
Параметры
operation
[in] Одно из значений EClrOperation , указывающее действие, для которого необходимо настроить поведение среды CLR.
action
[in] Одно из значений EPolicyAction , указывающее действие политики, которое среда CLR должна предпринять при operation
возникновении.
Возвращаемое значение
HRESULT | Описание: |
---|---|
S_OK | SetDefaultAction возвращается успешно. |
HOST_E_CLRNOTAVAILABLE | Среда CLR не была загружена в процесс или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов. |
HOST_E_TIMEOUT | Истекло время ожидания звонка. |
HOST_E_NOT_OWNER | Вызывающий объект не является владельцем блокировки. |
HOST_E_ABANDONED | Событие было отменено во время ожидания заблокированного потока или волокна. |
E_FAIL | Произошла неизвестная катастрофическая ошибка. После того как метод возвращает E_FAIL, среда CLR больше не может быть доступна в процессе. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE. |
E_INVALIDARG | Для задано недопустимое action operation значение или указано недопустимое значение для operation . |
Комментарии
Не все значения действий политики можно указать в качестве поведения по умолчанию для операций CLR. SetDefaultAction
Обычно можно использовать только для эскалации поведения. Например, узел может указать, что прерывания потока превратились в грубые прерывания потока, но не может указать обратное. В таблице ниже описаны допустимые action
значения для каждого возможного operation
значения.
Значение для operation |
Допустимые значения для action |
---|---|
OPR_ThreadAbort | - eAbortThread - eRudeAbortThread - eUnloadAppDomain — eRudeUnloadAppDomain — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_ThreadRudeAbortInNonCriticalRegion OPR_ThreadRudeAbortInCriticalRegion |
- eRudeAbortThread - eUnloadAppDomain — eRudeUnloadAppDomain — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_AppDomainUnload | - eUnloadAppDomain — eRudeUnloadAppDomain — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_AppDomainRudeUnload | — eRudeUnloadAppDomain — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_ProcessExit | — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
OPR_FinalizerRun | - eNoAction - eAbortThread - eRudeAbortThread - eUnloadAppDomain — eRudeUnloadAppDomain — eExitProcess - eFastExitProcess - eRudeExitProcess - eDisableRuntime |
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MSCorEE.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0