如何确保通过给定断点的任何线程都不会跳过?

时间:2019-02-17 09:15:31

标签: c# .net visual-studio

使用ASP.NET和Entity Framework Core,我无法中断控制器中无法正确响应客户端应用程序的方法的执行。

我在控制器中为方法设置了一个断点,但是我担心由于该方法可能是由一个线程执行的,而我认为该线程是在一个单独的进程中执行的,因此我将需要其他方法来中断它。

如何确保遍历一个断点,或者如果不遍历该断点,那么如何确保程序在异常情况下中断,从而阻止了执行到达断点?

1 个答案:

答案 0 :(得分:2)

向方法添加断点将停止执行,而不管执行该方法的线程如何。在Visual Studio的调试器中,没有什么东西只能在“主”线程上中断,这在没有“前景/ UI”线程与“后台”线程的服务器端代码中并不是真正的东西。线程池线程只是由线程池管理的常规线程。

如果跳过断点,则需要找出原因。

  • 是否有可能您没有遵守正确的程序?
  • 在调试会话中是否没有加载调试符号?
  • 也许您的本地代码与编译后的代码不同,从而导致VS自动禁用断点?

尝试将鼠标悬停在VS的断点上,以查看是否显示错误消息,并将您的工作重心从“线程”问题转移到寻找真正的罪魁祸首。