Gestionnaire de session de débogageSession debug manager

Le Gestionnaire de session de débogage (SDM) gère n’importe quel nombre de moteurs de débogage (dé) que le débogage n’importe quel nombre de programmes dans plusieurs processus sur un nombre illimité d’ordinateurs.The session debug manager (SDM) manages any number of debug engines (DE) that are debugging any number of programs in multiple processes across any number of machines. En plus de constituer un multiplexeur de moteur de débogage, le SDM fournit une vue unifiée de la session de débogage à l’IDE.In addition to being a debug engine multiplexer, the SDM provides a unified view of the debug session to the IDE.

Opération de gestionnaire de débogage de sessionSession debug manager operation

Le Gestionnaire de session de débogage (SDM) gère l’Allemagne.The session debug manager (SDM) manages the DE. Il peut y avoir plus d’un moteur de débogage en cours d’exécution sur un ordinateur en même temps.There can be more than one debug engine running on a machine at the same time. Pour multiplexer la norme DEs, le SDM encapsule un nombre d’interfaces à partir de la norme DEs et les expose à l’IDE comme une interface unique.To multiplex the DEs, the SDM wraps a number of interfaces from the DEs and exposes them to the IDE as a single interface.

Pour améliorer les performances, certaines interfaces ne sont pas multiplexés.To increase performance, some interfaces aren't multiplexed. Au lieu de cela, ils sont utilisés directement à partir de l’Allemagne et les appels à ces interfaces ne passent pas par le SDM.Instead, they are used directly from the DE, and calls to these interfaces don't go through the SDM. Par exemple, les interfaces utilisées avec la mémoire, le code et les contextes de document ne sont pas multiplexés, car ils font référence à une instruction spécifique, la mémoire ou le document dans un programme spécifique de débogage par un spécifique DE.For example, interfaces used with memory, code, and document contexts aren't multiplexed, because they refer to a specific instruction, memory, or document in a specific program debugged by a specific DE. Aucune autre dé ne doit être impliqué dans ce niveau de la communication.No other DE needs to be involved in that level of communication.

Cela n’est pas vrai pour tous les contextes.This is not true of all contexts. Les appels à l’interface de contexte d’évaluation expression passent par le SDM.Calls to the expression evaluation context interface go through the SDM. Lors de l’évaluation d’expression, le SDM encapsule le IDebugExpression2 interface il donne à l’IDE, car lorsque cette expression est évaluée, elle peut impliquer plusieurs DEs que déboguez des programmes dans le même processus qui peuvent être en cours d’exécution sur le même thread.During expression evaluation, the SDM wraps the IDebugExpression2 interface that it gives to the IDE because when that expression is evaluated, it may involve multiple DEs that are debugging programs in the same process that might be running on the same thread.

Le SDM sert généralement d’un mécanisme de délégation, mais il peut agir comme un mécanisme de diffusion.The SDM typically acts as a delegation mechanism, but it might act as a broadcast mechanism. Par exemple, lors de l’évaluation d’expression, le SDM agit comme un mécanisme de diffusion pour notifier DEs tous les qu’ils peuvent exécuter du code sur un thread spécifié.For example, during expression evaluation, the SDM acts as a broadcast mechanism to notify all DEs that they can run code on a specified thread. De même, lorsque le SDM reçoit un événement d’arrêt, il diffuse vers les programmes qu’il doivent s’arrêter.Similarly, when the SDM receives a stopping event, it broadcasts to the programs that they should stop running. Lorsqu’une étape est appelée, le SDM diffuse vers les programmes qu’ils peuvent continuer à s’exécuter.When a step is called, the SDM broadcasts to the programs that they can continue running. Points d’arrêt sont également diffusés à chaque DE.Breakpoints are also broadcast to every DE.

Le SDM ne suit pas le programme en cours, le thread ou le frame de pile.The SDM does not track the current program, thread, or stack frame. Le processus, programme et informations sur le thread sont envoyés vers le SDM conjointement avec les événements de débogage spécifiques.The process, program, and thread information are sent to the SDM in conjunction with specific debugging events.

Voir aussiSee also

Moteur de débogage Debug engine
Composants du débogueur Debugger components
Contextes du débogueurDebugger contexts