从其他线程调用失败方法时调试

时间:2009-06-09 13:50:20

标签: c# visual-studio visual-studio-2008 debugging

我的代码类似于this问题中的代码,基本上是一个UI线程,它从另一个线程更新并使用InvokeRequired()Invoke(..)。现在,如果方法在工作部分失败,调试器会在Invoke(..)行停止 - 我可以让它向我显示实际失败的行吗?

2 个答案:

答案 0 :(得分:1)

您是否尝试过调试器中断异常(在VS菜单中:Debug - > Exceptions,导航到“公共语言运行时异常”并可选择深入查看特定的异常类型,检查Thrown复选框)?这将导致调试器在抛出异常的代码行中断。我认为这也适用于多线程场景。

答案 1 :(得分:1)

您可能遇到的问题是Just My Code(JMC)的问题。这是调试器的一个功能,它尝试将未处理的异常通知等项限制为仅由用户而不是框架拥有的代码。尝试禁用此功能并打破抛出的异常,这应该会将您带到问题的根源。

禁用我的代码

  • 转到工具 - >选项
  • 导航到调试器 - >一般
  • 取消选中Just My Code选项