单步执行程序

当线程被暂挂时,可以使用单步控制来逐行单步执行程序。

当执行单步操作时,如果遇到了断点或异常,在该断点或异常处就会暂挂执行,单步操作结束。

单步跳过

要执行单步跳过命令:

  1. 调试视图中选择您想单步执行的线程。
  2. 执行下列其中一项任务:
    • 单击调试视图工具栏中的单步跳过按钮(“单步跳过”按钮)。
    • 从工作台菜单栏中选择运行 > 单步跳过
  3. 这就会执行当前选择的行,并在下一个可执行行上暂挂执行。

如果在调试器首选项中设置了逐个节点单步执行,则单步跳过操作将逐个节点单步执行而不是逐行单步执行。

注:
  • 如果您单步跳过 for-each 语句,则会因为 for-each 循环中的上下文更改而添加新的堆栈帧。
  • 如果单步跳过模板规则的最后一行,则调试器要么将在与当前上下文中的下一个元素相匹配的模板规则处停止,要么将返回至调用模板规则(如果已经处理了上下文中的所有元素)。

单步跳入

要执行单步跳入命令:

  1. 调试视图中选择您想单步执行的线程。
  2. 执行下列其中一项任务:
    • 单击调试视图工具栏中的单步跳入按钮(“单步跳入”按钮)。
    • 从工作台菜单栏中选择运行 > 单步跳入
  3. 如果当前行是简单语句,则此命令执行该语句。如果当前行包含 xsl:apply-templatesxsl:call-template 或扩展函数调用,则此命令将单步跳入适当的模板规则或函数。

单步返回

要执行单步返回命令:

  1. 调试视图中选择您想单步执行的线程。
  2. 执行下列其中一项任务:
    • 单击调试视图工具栏中的单步返回按钮(“单步返回”按钮)。
    • 从工作台菜单栏中选择运行 > 单步返回
  3. 将执行一些指令,直到从堆栈中弹出当前堆栈帧为止。将在前一个堆栈帧中并且恰好在 xsl:apply-templatesxsl:call-template 或扩展函数调用之后停止执行。如果从第一个模板规则中发出此命令,则变换将一直运行至完成。
注: 当在 for-each 循环中时,单步返回将单步跳出两个堆栈帧而不是一个堆栈帧。

运行至行

当线程被暂挂时,可以继续执行,直到执行了指定的行为止。这是一种在某行暂挂执行而不需要设置断点的简便方法。

  1. 在编辑器中,将光标放置在想要程序运行至的那一行,并从弹出菜单中选择运行至行
  2. 程序执行将继续,并且刚好在要执行的指定行前面暂挂。

反馈