【发布时间】:2015-01-17 09:10:50
【问题描述】:
使用(lldb) watchpoint set var myvar 设置观察点将在写入变量时暂停程序并将值的更改打印到调试控制台。
通过在 Xcode GUI 中使用它,我知道可以设置断点来执行操作并在之后自动继续程序。
观察点是否可能出现类似的行为?我可以设置一个只打印更改并在之后自动继续程序执行的观察点吗?
【问题讨论】:
标签: debugging lldb watchpoint
使用(lldb) watchpoint set var myvar 设置观察点将在写入变量时暂停程序并将值的更改打印到调试控制台。
通过在 Xcode GUI 中使用它,我知道可以设置断点来执行操作并在之后自动继续程序。
观察点是否可能出现类似的行为?我可以设置一个只打印更改并在之后自动继续程序执行的观察点吗?
【问题讨论】:
标签: debugging lldb watchpoint
我实际上使用了与上面 Jason 描述的解决方案相近的解决方案。它在 XCode 6 中对我有用,并在此处进行了详细描述:In XCode 6 how can you set a watchpoint without stopping execution?。
希望这会有所帮助。
【讨论】:
您正在 lldb 中寻找 watch command add 命令。观察点命令不像 lldb 中的断点命令那样成熟/经过测试——我只是做了一些快速测试,你想做的事情现在不适用于 Xcode 6。理想情况下你会做类似watchpoint command add --script-type command -one-liner "continue" 或watchpoint command add --script-type python -one-liner "return True"(当然可以使用最短的明确命令,例如wa c add -e python -o "return True",我将完整的命令拼写得更清楚)。当您将命令添加到观察点时,它看起来不会产生“旧值/新值”输出。我认为这不应该是它目前的行为,但我会问其他几个人,看看他们是否强烈反对。
【讨论】: