DkmRuntimeInstance.StepControlRequested Method

Definition

StepControlRequested is called by the stepping manager when a non-controlling runtime instance detects that the thread has hit a transition into its runtime. If the current controlling runtime instance can stop stepping, it should set Granted to true. Actual control is not given until the requesting runtime calls DkmStepper.TakeStepControl. This two part process allows callers to request control of multiple steppers at the same time.

Location constraint: API must be called from a Monitor component (component level < 100,000).

public:
 bool StepControlRequested(Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ Stepper, Microsoft::VisualStudio::Debugger::Stepping::DkmStepArbitrationReason Reason, Microsoft::VisualStudio::Debugger::DkmRuntimeInstance ^ CallingRuntimeInstance);
public bool StepControlRequested (Microsoft.VisualStudio.Debugger.Stepping.DkmStepper Stepper, Microsoft.VisualStudio.Debugger.Stepping.DkmStepArbitrationReason Reason, Microsoft.VisualStudio.Debugger.DkmRuntimeInstance CallingRuntimeInstance);
member this.StepControlRequested : Microsoft.VisualStudio.Debugger.Stepping.DkmStepper * Microsoft.VisualStudio.Debugger.Stepping.DkmStepArbitrationReason * Microsoft.VisualStudio.Debugger.DkmRuntimeInstance -> bool
Public Function StepControlRequested (Stepper As DkmStepper, Reason As DkmStepArbitrationReason, CallingRuntimeInstance As DkmRuntimeInstance) As Boolean

Parameters

Stepper
DkmStepper

[In] DkmStepper represents a request to step a thread. It facilitates shared object lifetime between the various runtime debug monitors that participate in stepping.

Reason
DkmStepArbitrationReason

[In] DkmStepArbitrationReason the reason step arbitration is occurring.

CallingRuntimeInstance
DkmRuntimeInstance

[In] The calling runtime instance that wishes to take control of the step.

Returns

[Out] The controlling runtime can stop the step and give control to the caller, then it should set this to true.

Applies to