EPolicyAction 枚举
描述主机可对 EClrOperation 描述的操作和 EClrFailure 描述的失败设置的策略操作。
语法
typedef enum {
eNoAction,
eThrowException,
eAbortThread,
eRudeAbortThread,
eUnloadAppDomain,
eRudeUnloadAppDomain,
eExitProcess,
eFastExitProcess,
eRudeExitProcess,
eDisableRuntime
} EPolicyAction;
成员
成员 | 说明 |
---|---|
eAbortThread |
指定公共语言运行时 (CLR) 应正常中止线程。 正常中止包括尝试运行所有 finally 块、与线程中止相关的任何 catch 块以及终结器。 |
eDisableRuntime |
指定 CLR 应进入禁用状态。 受影响的进程中不能执行更多托管代码,并且线程被阻止进入 CLR。 |
eExitProcess |
指定 CLR 应尝试正常退出进程,包括运行终结器以及执行清理和记录操作。 |
eFastExitProcess |
指定 CLR 应立即退出进程,且不运行终结器或执行清理和记录操作。 但是,通知将发送到调试程序。 |
eNoAction |
指定不执行任何操作。 |
eRudeAbortThread |
指定 CLR 应执行强制线程中止。 仅执行标记为 MustRunInClientContextAttribute 的 catch 和 finally 块。 |
eRudeExitProcess |
指定 CLR 应退出进程,且不运行终结器或记录操作。 |
eRudeUnloadAppDomain |
指定 CLR 应执行 AppDomain 的强制卸载。 仅执行标记为 MustRunInClientContextAttribute 的终结器。 同样,堆栈中具有此 AppDomain 的所有线程都会收到 ThreadAbortException ,但仅执行标记为 MustRunInClientContextAttribute 的 catch 和 finally 块。 |
eThrowException |
指定应引发适合条件的异常,例如内存不足、缓冲区溢出等等。 |
eUnloadAppDomain |
指定应卸载 AppDomain。 CLR 尝试运行终结器。 |
备注
主机通过调用 ICLRPolicyManager 接口的方法来设置策略操作。 有关强制中止和正常中止的信息,请参阅 EClrOperation 枚举。
要求
平台:请参阅系统要求。
标头:MSCorEE.h
库:MSCorEE.dll
.NET Framework 版本:自 2.0 起可用