13

我知道名称空间中具有该属性 的Debugger类。System.DiagnosticsIsAttached

是否有某个属性可以增强此调用并告诉我我们是否真的在单步执行代码,而不仅仅是被附加?我知道这可能不太可能,但知道会很有用。

编辑

也许一个更好的问题,而不是“步进”是运行一些代码:

  1. 当调试器第一次“中断”时(进入调试模式,附加后)
  2. 当它再次运行时(但仍然连接,但不是“逐步通过”)。
4

1 回答 1

2

您可以从 Debugger.CurrentMode 属性获取调试器状态。但这只会告诉您它当前是否处于中断状态或程序是否正在运行。没有“步进”模式,这是一个转瞬即逝的时刻,几乎可以确保,如果你能找到它,那么采取行动已经为时已晚。几乎可以保证是线程竞赛。

于 2013-06-10T16:00:43.213 回答