【发布时间】:2016-12-26 14:59:29
【问题描述】:
我正在开发一个项目(ASP.NET MVC 5),该项目在其业务逻辑方面可能存在一些竞争风险,特别是当两个用户几乎同时调用同一个控制器方法时会发生什么。
所以我决定通过在上述控制器方法中设置断点来测试这一点,然后我尝试通过从浏览器发送请求来击中该断点。然后我打开一个新标签并尝试再次加载我的网站,但问题是它没有加载。
在我释放断点之前,网站完全(所有页面)无响应。
在线程窗口中,我可以看到很少有未分配的工作线程,并且有一个线程卡在断点处。
我正在使用 Visual Studio 2015 社区。p>
这种行为正常吗?如果是这种情况,我应该如何解决我的问题?
【问题讨论】:
-
调试会锁定所有线程,直到中断被释放。否则你将如何调试任何东西?
-
它会一直停留在你的断点,直到你发布并且 IIS(实际上是站点)会接受这两个不同的请求。
-
@Liam 我对 c# 应用程序中的多线程仍然不是很熟悉,但我确信在 java(eclipse) 中只有遇到断点的线程才会停止(其他线程继续运行)。我认为这里是相似的。
标签: asp.net asp.net-mvc multithreading visual-studio debugging