DkmStepArbitrationReason 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
DkmStepArbitrationReason 发生步骤仲裁的原因。
public enum class DkmStepArbitrationReason
public enum class DkmStepArbitrationReason
enum DkmStepArbitrationReason
public enum DkmStepArbitrationReason
type DkmStepArbitrationReason =
Public Enum DkmStepArbitrationReason
- 继承
-
DkmStepArbitrationReason
字段
| 名称 | 值 | 说明 |
|---|---|---|
| AsyncStep | 10 | 了解异步模式的运行时实例已控制该步骤。 此步骤将在另一个线程上异步完成。 步进器应清除所有步骤状态以允许该状态。 |
| EnterRuntime | 5 | 另一个运行时实例检测到指令指针已命中其运行时的入口点。 这仅在调用返回 true 的 StepControlRequested 之后使用。 |
| ExceptionHandlerFound | 7 | 异常展开处于未完成状态,并且找到了处理程序。 如果运行时的异常模型可由其他运行时使用,则应执行单步仲裁。 例如,CLR 异常使用本机 SEH 异常。 因此,在托管步骤中,如果引发异常并找到处理程序,则本机将收到找到处理程序的通知。 但是,本机不应控制此步骤。 托管应使用 ExceptionHandlerFound 作为其原因侦听单步执行仲裁,并完成单步执行到托管 catch 块。 |
| ExitRuntime | 4 | 当前运行时实例刚刚完成了从其运行时单步执行已知退出操作。 指令指针应位于下一个运行时入口点的第一条指令上。 |
| ExitThread | 11 | 发起步骤的线程在完成之前退出。 |
| InstructionLevelOverride | 8 | 由单步执行管理器使用指令级步骤替代行或语句步骤。 仅当在初始单步执行仲裁期间未找到控制运行时实例时,才会将此传递给本机运行时实例。 |
| NewStep | 0 | 单步执行管理器正在寻找用于启动新步骤的运行时。 |
| NoSource | 6 | 指令指针已降落在已知模块中的某个位置,但没有源信息。 |
| NoSymbols | 2 | 指令指针已降落在已知 DkmModuleInstance 中没有符号的位置。 |
| TransitionModule | 3 | 指令指针已降落在标记为转换模块的 DkmModuleInstance 内的位置。 |
| Unknown | 9 | 运行时实例出于未知原因要求单步执行仲裁。 |
| UnknownModule | 1 | 指令指针已降落在不在已知的 DkmModuleInstance 中的位置。 |