gc(从条件断点继续)

gc 命令从条件断点恢复执行,其方式与 (单步执行、跟踪或自由执行) 时命中断点的方式相同。 这仅适用于使用“j (条件) ...” 的条件断点的旧样式style 表达式,而不是更简单的“/w”样式条件断点。 有关详细信息,请参阅 设置条件断点

gc

虽然此命令不再对条件断点有用,但它仍可用于在不中断调试器的情况下执行日志记录或其他一些活动的断点。 例如,可以编写如下所示的断点:

bp module!myFunction ".echo myFunction executed; gc"

如果改用了普通的“g”命令,则单步执行“myFunction”时,程序将继续执行,而不只是打印消息并继续执行步骤操作。

环境

说明
模式 用户模式、内核模式
目标 仅实时调试
平台 all

其他信息

有关相关命令的概述,请参阅 控制目标

注解

条件断点 使用“j (条件) ...”表达式末尾包含执行命令,这应该是 gc 命令。

例如,下面是一个示例条件断点:

0:000> bp Address "j (Condition) 'OptionalCommands'; 'gc' " 

遇到此断点且表达式为 false 时,将使用以前使用的相同执行类型继续执行。 例如,如果使用 g (Go) 命令到达此断点,则执行将自由恢复。 但是,如果在单步执行或跟踪时到达此断点,则执行会随着步骤或跟踪一起恢复。

另一方面,下面是一个不正确的断点表述,因为即使你在到达断点之前已单步执行,执行也始终可以自由恢复:

0:000> bp Address "j (Condition) 'OptionalCommands'; 'g' "