Une cible de débogage ordinaire dans la vue de Débogage se présente comme d'après le diagramme suivant :

Dans la vue Débogage, les lancements utilisés pour démarrer la session de débogage du programme sont affichés au niveau du noeud supérieur (pointeur A sur le diagramme). Au-dessous du lancement, un noeud représentant le moteur de débogage est affiché (pointeur B sur le diagramme). Chaque unité d'exécution de votre programme est alors affichée (pointeur C sur le diagramme). Lorsque l'exécution du programme s'arrête, par défaut, le noeud de l'unité d'exécution d'arrêt se développe automatiquement pour afficher ses cadres de pile (pointeur D sur le diagramme). Si vous développez manuellement d'autres unités d'exécution, ces dernières se développeront automatiquement à la prochaine interruption du programme. Enfin, un noeud représentant le processus et le programme en cours de débogage est affiché (pointeur E sur le diagramme).
Lorsque l'exécution du programme est interrompue, la source du cadre de pile sélectionné s'ouvre dans l'éditeur, en sélectionnant la ligne de source que le programme est sur le point d'exécuter. Si le programme comporte de nombreuses unités d'exécution, la pile correspondant à l'unité d'exécution qui a entraîné l'arrêt risque de disparaître du cadre de débogage.
La vue Débogage peut également être utilisée pour définir le démon du débogueur. Pour plus d'informations à ce sujet, consultez la rubrique connexe sur l'écoute des moteurs de débogage.
Vous pouvez exécuter ces actions de débogage de base dans la vue Débogage :
) ou utilisez la touche F8.
) ou tapez Maj+F8. Vous pouvez également cliquer avec le bouton droit de la souris sur la cible de débogage à arrêter (ou sur une de ses unités d'exécution ou une de ses piles) et choisir une action d'arrêt.
).
Cette action peut être réalisable ou non, en fonction de la manière dont le programme en cours de débogage a été démarré.
)
(Ctrl+F8).
Si le processus est sélectionné lorsque cette action est utilisée, toutes
les unités d'exécution du processus sont arrêtées. Si votre moteur de débogage permet d'agir individuellement sur les unités d'exécution,
et si une unité d'exécution est sélectionnée, elle est la seule
à être arrêtée. Cette capacité n'est disponible qu'à compter de la version
11.1 du moteur de débogage. La ou les unités d'exécution
de l'application sont interrompues jusqu'à ce que vous utilisiez l'option Reprendre.
En cas d'interruption, le moteur de débogage envoie une instruction SIGSTOP au programme en cours de débogage.L'arrêt est utile si vous avez un processus débridé qui fonctionne, mais qui n'atteint aucun point d'arrêt. Vous pouvez reprendre le contrôle d'une application en l'arrêtant. Lorsque vous arrêtez un programme, l'arrêt se produit en général dans la vue de désassemblage de l'éditeur.
Si une unité d'exécution est interrompue, vous pouvez utiliser les commandes d'avance pas à pas pour exécuter le programme ligne par ligne. Dans les opérations d'avance pas à pas, si le programme détecte un point d'arrêt ou un événement, l'exécution s'interrompt à leur niveau et l'opération pas à pas prend fin. Vous pouvez utiliser les commandes d'avance pas à pas pour progresser dans le programme instruction par instruction ou emplacement par emplacement.
Les commandes de progression suivantes sont disponibles :
) (F6) : Lorsque vous utilisez cette commande, le programme passe à la ligne source suivante.
) (F5) : Lorsque vous utilisez cette commande, le passage passe à l'instruction suivante. Si la ligne en cours contient un appel à une autre fonction, le débogueur s'arrête à la fonction en question.Le comportement de cette commande est affecté par l'action Utiliser le débogage par étape/progression (
) (Maj+F5). Si le filtre est désactivé (bouton de commande non sélectionné), le débogueur s'arrête, même s'il ne contient pas d'informations de débogage et que le désassemblage doit être affiché. Si le filtre est activé (bouton de commande sélectionné), le débogueur s'arrête dans la fonction appelée uniquement lorsque la source peut être affichée. Si la source ne peut pas être affichée, il se comporte comme si vous aviez émis une commande d'avance d'un pas sans entrée.
La variable d'environnement DER_DBG_ STEP_DEBUG du moteur de débogage affecte le comportement de l'action Utiliser les filtres de progression.
Pour plus d'informations sur les variables d'environnement du moteur de débogage, consultez la rubrique connexe.
) (F7) : Lorsque vous utilisez cette commande, le programme s'exécute jusqu'au point situé dans le programme appelant immédiatement après l'appel à la fonction en cours. En règle générale, l'arrêt s'effectue immédiatement après l'instruction effectuant l'appel. Si le programme appelant comporte des informations de débogage, elles peuvent être au milieu d'une ligne source.