DkmStepper.OnCrossThreadStepArbitration(DkmStepArbitrationReason, DkmRuntimeInstance, DkmThread, DkmInstructionAddress, DkmStepper) Méthode

Définition

Appelée par un moniteur d’exécution lorsqu’une étape se poursuit sur un thread différent. Le gestionnaire de pas à pas crée un nouveau DkmStepper à utiliser sur le nouveau thread et lance l’arbitrage de pas à pas pour déterminer le runtime qui doit effectuer l’étape comme OnStepArbitration. La nouvelle exécution pas à pas utilise le même type d’étape et l’autre unité d’étape que le pas à pas d’origine. Une nouvelle adresse d’instruction de départ doit être fournie et définie comme adresse de départ de l’exécution pas à pas. Le pas à pas d’origine reste actif et lorsque la nouvelle exécution pas à pas est terminée, le gestionnaire de pas à pas supprime l’événement et notifie le pas à pas d’origine de la fin de l’exécution.

Contrainte d’emplacement : l’API doit être appelée à partir d’un composant d’analyse (au niveau du composant < 100 000).

public:
 void OnCrossThreadStepArbitration(Microsoft::VisualStudio::Debugger::Stepping::DkmStepArbitrationReason Reason, Microsoft::VisualStudio::Debugger::DkmRuntimeInstance ^ CurrentControllingRuntimeInstance, Microsoft::VisualStudio::Debugger::DkmThread ^ NewThread, Microsoft::VisualStudio::Debugger::DkmInstructionAddress ^ NewStartingInstructionAddress, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Debugger::Stepping::DkmStepper ^ % NewStepper);
public void OnCrossThreadStepArbitration (Microsoft.VisualStudio.Debugger.Stepping.DkmStepArbitrationReason Reason, Microsoft.VisualStudio.Debugger.DkmRuntimeInstance CurrentControllingRuntimeInstance, Microsoft.VisualStudio.Debugger.DkmThread NewThread, Microsoft.VisualStudio.Debugger.DkmInstructionAddress NewStartingInstructionAddress, out Microsoft.VisualStudio.Debugger.Stepping.DkmStepper NewStepper);
member this.OnCrossThreadStepArbitration : Microsoft.VisualStudio.Debugger.Stepping.DkmStepArbitrationReason * Microsoft.VisualStudio.Debugger.DkmRuntimeInstance * Microsoft.VisualStudio.Debugger.DkmThread * Microsoft.VisualStudio.Debugger.DkmInstructionAddress * DkmStepper -> unit
Public Sub OnCrossThreadStepArbitration (Reason As DkmStepArbitrationReason, CurrentControllingRuntimeInstance As DkmRuntimeInstance, NewThread As DkmThread, NewStartingInstructionAddress As DkmInstructionAddress, ByRef NewStepper As DkmStepper)

Paramètres

Reason
DkmStepArbitrationReason

Dans DkmStepArbitrationReason : la raison pour laquelle l’arbitrage est en cours.

CurrentControllingRuntimeInstance
DkmRuntimeInstance

Dans Instance du runtime demandant l’arbitrage.

NewThread
DkmThread

Dans Thread sur lequel créer la nouvelle exécution pas à pas.

NewStartingInstructionAddress
DkmInstructionAddress

Dans Adresse de début de la nouvelle exécution pas à pas.

NewStepper
DkmStepper

[Out, optional] Nouvelle exécution pas à pas.

S’applique à