pt(步进到下一个 Return)
pt 命令执行程序,直到到达返回指令。
User-Mode
[~Thread] pt [r] [= StartAddress] [Count] ["Command"]
Kernel-Mode
pt [r] [= StartAddress] [Count] ["Command"]
参数
线程
指定要继续执行的线程。 所有其他线程已冻结。 有关语法的详细信息,请参阅 线程语法。 只能在用户模式下指定线程。
R
打开和关闭寄存器和标志的显示。 默认情况下,将显示寄存器和标志。 可以使用 ptr、 pr、 tr 或 .prompt_allow -reg 命令禁用寄存器显示。 所有这些命令都控制相同的设置,你可以使用它们中的任何一个来替代以前使用这些命令的任何用法。
还可以使用 l-os 命令禁用寄存器显示。 此设置与其他三个命令是分开的。 若要控制显示哪些寄存器和标志,请使用 rm (Register Mask) 命令。
StartAddress
指定调试器开始执行的地址。 否则,调试器从指令指针指向的指令开始。 有关语法的详细信息,请参阅地址和地址范围语法。
计数
指定此命令停止时必须遇到的 返回 指令数。 默认值为 1。
命令
指定要在执行步骤后执行的调试器命令。 此命令在显示标准 pt 结果之前执行。 如果还使用 Count,则指定命令在完成所有步进 (但最后一步的结果显示在) 之前执行。
环境
项 | 说明 |
---|---|
模式 | 用户模式、内核模式 |
目标 | 仅实时调试 |
平台 | all |
其他信息
有关相关命令的详细信息,请参阅 控制目标。
注解
pt 命令会导致目标开始执行。 此执行一直持续到到达 返回 指令或遇到断点为止。
如果程序计数器已在 返回 指令上,则执行整个返回。 返回此返回后,将继续执行,直到达到另一个 返回 。 此调用的执行(而不是跟踪)是 pt 和 tt 之间的唯一区别 (跟踪到下一个返回) 。
在源模式下,可以将一个源行与多个程序集指令相关联。 pt 命令不会在与当前源行关联的返回指令处停止。
以下示例演示如何使用 pt 命令和 kb 命令来显示堆栈跟踪:
0:000> pt "kb"
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈