【发布时间】:2023-04-03 08:45:01
【问题描述】:
当某些特定变量具有定义的值时,我如何设置调试器停止?例如,我有一个代码它崩溃了,它循环了 10000 次以进行一些后处理。我知道错误可能是从 7000 迭代开始产生的,所以我想从那里停止,避免从第一个 7000 开始手动循环。 我在 c# 中使用 Visual Studio 2008 和 2010,我认为两者的解决方案是相同的。
【问题讨论】:
当某些特定变量具有定义的值时,我如何设置调试器停止?例如,我有一个代码它崩溃了,它循环了 10000 次以进行一些后处理。我知道错误可能是从 7000 迭代开始产生的,所以我想从那里停止,避免从第一个 7000 开始手动循环。 我在 c# 中使用 Visual Studio 2008 和 2010,我认为两者的解决方案是相同的。
【问题讨论】:
您正在寻找的是一个条件断点。以下是假设变量名称为i 的设置方法。
i == 10000
现在再次运行你的场景,只有当i 的值等于10000 时才会触发断点。
一句警告。您可以将几乎任何合法的 C# 表达式放入条件断点,但每次遇到断点时都会对其进行评估。如果使用复杂的条件,这可能会导致调试非常缓慢
【讨论】:
打开断点窗口并从其菜单中创建一个新的数据断点。
【讨论】:
简单的方法是:
如果(名称变量 = X){ 断点:名称变量; }
【讨论】: