我通常使用的一种方法最近开始抛出异常。在大多数调试情况下,我会在该方法顶部设置断点,并运行到我感兴趣的带有触发异常的参数值的调用位置。但在这种情况下,那将是不切实际的,所以我尝试设置一个条件断点,只有当该参数值出现时才会中断。我在下面指示的位置创建了一个断点,并给它一个条件
令我惊讶的是,这样做导致了Visual Studio和我的应用程序在调试模式下停止工作。 我的应用程序启动并输出了一些简单的日志信息,但随后完全停止响应。认为可能是由于Visual Studio必须要执行额外的工作来监视断点条件而导致速度变慢,我离开了我的桌子15分钟给它运行一些时间。当我回来时,没有任何变化。我可以通过删除断点并使用相同的条件重新创建它来复现该条件。最奇怪的是,当我启用这个有问题的断点时,通常会在当前执行的语句上中断程序执行(不管它是不是断点),但 Break All 调试命令根本没有任何作用。
有人遇到过类似的Visual Studio断点条件行为吗?我能够正常地使用Hit Count条件。
str == "OffendingValue"
。class Foo
{
// Bar() is called many, many times
void Bar(string str)
{
try
{
// Breakpoint inserted here
...
}
catch (Exception ex)
{
...
}
}
}
令我惊讶的是,这样做导致了Visual Studio和我的应用程序在调试模式下停止工作。 我的应用程序启动并输出了一些简单的日志信息,但随后完全停止响应。认为可能是由于Visual Studio必须要执行额外的工作来监视断点条件而导致速度变慢,我离开了我的桌子15分钟给它运行一些时间。当我回来时,没有任何变化。我可以通过删除断点并使用相同的条件重新创建它来复现该条件。最奇怪的是,当我启用这个有问题的断点时,通常会在当前执行的语句上中断程序执行(不管它是不是断点),但 Break All 调试命令根本没有任何作用。
有人遇到过类似的Visual Studio断点条件行为吗?我能够正常地使用Hit Count条件。