Programm schrittweise durchlaufen

Wird ein Programm gestoppt, kann das Programm mit Hilfe der Step-Steuerelemente Anweisung für Anweisung ausgeführt werden. Während der Ausführung einer Step-Operation wird, wenn ein Unterbrechungspunkt oder eine Ausnahme auftritt, die Ausführung an dem Unterbrechungspunkt oder der Ausnahme ausgesetzt.

Mit Hilfe von Step-Befehlen können Sie Ihr Programm Anweisung für Anweisung durchlaufen.

Geben Sie einen Step-Befehl ein, während das Debug für eine Multithreading-Anwendung erfolgt, wird die Ausführung möglicherweise in einem anderen Thread gestoppt.

Step over

Ein Befehl "Step over" erlaubt die Ausführung einer einzelnen Anweisung. Die aktuelle Anweisung wird ausgeführt, ohne in einem Programm oder einer Prozedur, das bzw. die innerhalb der Anweisung aufgerufen wird, zu stoppen (es sei denn, ein Unterbrechungspunkt wird gefunden), und die Ausführung wird an der nächsten ausführbaren Anweisung ausgesetzt. Gehen Sie wie folgt vor, um einen Befehl "Step over" auszuführen:
  1. Wählen Sie, falls gewünscht, einen Aufrufstackeintrag in der Sicht "Debug" aus. Die aktuelle Ausführungszeile in diesem Aufrufstackeintrag wird im Editor in der Debugperspektive hervorgehoben.
  2. Führen Sie einen der folgenden Schritte aus:
    • Klicken Sie die Schaltfläche Step over (Symbol für Step over) in der Symbolleiste der Sicht "Debug" an.
    • Wählen Sie Ausführen > Step over in der Workbench-Menüleiste aus.
    • Drücken Sie die Taste F6.

Step into

Mit dieser Aktion können Sie in Code verzweigen, der Debugdaten enthält, und Code überspringen, der keine Debugdaten enthält. Dies könnte in dem aktuellen Programm/der aktuellen Prozedur, in einem aufgerufenen Programm/einer aufgerufenen Prozedur oder in einem Programm/einer Prozedur, das/die innerhalb eines aufgerufenen Programms/einer aufgerufenen Prozedur aufgerufen wird, der Fall sein.

Gehen Sie wie folgt vor, um einen Befehl "Step into" auszuführen:

  1. Wählen Sie, falls gewünscht, einen Aufrufstackeintrag in der Sicht "Debug" aus. Die aktuelle Ausführungszeile in diesem Aufrufstackeintrag wird im Debugger-Editor in der Debugperspektive hervorgehoben.
  2. Führen Sie einen der folgenden Schritte aus:
    1. Klicken Sie die Schaltfläche Step into (Symbol für Step into) in der Symbolleiste der Sicht "Debug" an.
    2. Drücken Sie die Taste F5.
  3. Die aktuelle Anweisung wird ausgeführt und das Programm stoppt bei der nächsten Zeile, für die Debugdaten verfügbar sind.

Step return

Das Absetzen eines Befehls "Step return" erlaubt die Ausführung aller Threads. Gehen Sie wie folgt vor, um einen Befehl "Step return" auszuführen:

  1. Wählen Sie einen Aufrufstackeintrag in der Sicht "Debug" aus. Dies hat zur Folge, dass die aktuelle Ausführungszeile in dem ausgewählten Rahmen im Editor hervorgehoben wird.
  2. Führen Sie einen der folgenden Schritte aus:
    1. Klicken Sie die Schaltfläche Step return (Symbol für Step return) in der Symbolleiste der Sicht "Debug" an.
    2. Wählen Sie Ausführen > Step return in der Workbench-Menüleiste aus.
    3. Drücken Sie die Taste F7.
  3. Der aktuelle Ausführungspunkt wird bis zu der Zeile ausgeführt, die direkt auf die Zeile folgt, die die Funktion oder das Programm aufgerufen hat. Die Ausführung stoppt nach dem Verlassen der aktuellen Funktion oder des aktuellen Programms. Wird dieser Befehl von einem Haupteingangspunkt (d. h. in main()) abgesetzt, wird das Programm bis zum Ende ausgeführt.
    Einschränkung:
    • "Step return" ist in Releases vor V5R3 nicht verfügbar.
    • "Step return" wird für OPM-Programme (Nicht-ILE-Programme) nicht unterstützt. Wird versucht, einen Befehl "Step return" von einem Nicht-ILE-Programm aus auszuführen, verbleibt der Debugger an seiner aktuellen Position und es wird eine Nachricht geöffnet, die angibt, dass der Befehl "Step return" nicht abgesetzt werden konnte.
Anmerkung: Gilt für Java Führen Sie das Debug für Ihr Java-Programm aus, kann das Verhalten bei Step-Befehlen unregelmäßig sein, wenn ein Befehl "Step into" für Konstruktoren oder ein Befehl "Step into" oder "Step over" für SystemLoad-Bibliotheksfunktionen ausgeführt wird.