VS 2017 - 调试时非常缓慢(卡顿)

82
当我调试我的解决方案时,vs 2017非常卡顿和缓慢,就像它需要在后台处理一些重的东西一样。因此,每隔5秒钟停止“响应”2秒钟,这非常令人恼火。有什么建议吗?编辑(尝试建议):浏览器链接已关闭停止了客户反馈。

1
我曾经在使用BrowserLink时遇到过这个问题。我关闭了它,然后一切都恢复正常了,可能只是一个误导,但值得一试。 - Chris Dixon
3
你试过停止客户反馈吗?这是帮助-->发送反馈-->设置...-->不,我不想参与。 - Ori Nachum
启用“仅 IntelliTrace 事件”也是可以的 | 禁用也没有帮助。 - Muarl
我的问题-类似的症状,ASP.NET项目调试非常缓慢-已经通过另一种解决方案得到解决,https://dev59.com/1uo6XIcBkEYKwwoYPR_f#22290607 - 对于未来遇到此问题的人可能会有用。 - Paweł Bulwan
对于在15.8.1版本发布后才看到这个问题的人:https://developercommunity.visualstudio.com/content/problem/315338/vs-2017-1581-debugging-extremely-slow.html - csrowell
显示剩余3条评论
17个回答

0

0
我曾经遇到一个问题,如果从Visual Studio启动程序,它会运行得比较慢,后来发现是由于太多的线程,例如在循环中使用了大量的new System.Threading.Thread()。我将代码改为使用ThreadPool和Task等,这个缓慢的问题就解决了。

0
有时是因为杀毒软件中的实时扫描。
为您的杀毒软件添加Visual Studio文件/文件夹的例外。
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe C:\Program Files (x86)\Microsoft Visual Studio\201

0
在我的情况下,我设置了一个永远不会满足的条件断点。我完全忘记了这个断点。有时,给断点添加一个简单的条件会大大降低调试速度。
只是为了帮助其他人,我把这个经验分享出来。

0

如果您使用的是VS 2017企业版,请尝试禁用IntelliTrace功能(工具->选项-> IntelliTrace)

关闭此功能后,即使在调试时启用了诊断工具(工具->选项->调试->调试时启用诊断工具),延迟行为也会消失。


4
如果上面提供的解决方案对您无效,并不意味着它在所有情况下都不起作用。调试时您的应用程序变慢可能有许多其他原因。 - armadillo.mx

0
这可能是由于您的C#应用程序中发生了许多异常。尝试使用“工具”>“选项”>“调试”>“常规”>“启用仅限我的代码”进行实验。检查输出窗口中是否记录了许多异常。
根据文章使用Visual Studio加快调试速度所述,
当调试托管(.NET)代码时,每当发生异常,无论是否已处理,目标应用程序都会暂停(就像它遇到了断点),以便运行时可以通知调试器发生了异常。这样调试器就可以在第一次机会异常时停止,如果没有,应用程序会恢复执行。这意味着如果发生大量异常,将会显著降低应用程序的执行速度。
您可以通过查看输出窗口来判断是否发生了大量异常。如果在窗口中看到很多“类型为...的第一次机会异常”或“抛出异常...”的消息,那很可能是您的问题。
为了诊断这个潜在问题,您可能需要禁用“只调试我的代码”,因为当启用时,第一次机会异常消息不会出现在“外部代码”中发生的异常中,但通知开销仍然存在。一旦您诊断出第一次机会异常是否是您的问题(或者不是),请记得出于其他好的原因再次启用“只调试我的代码”。
启用“只调试我的代码”使我能够在我的应用程序中断下触发的异常,并修复它们。修复了仅有的两个异常后,我的应用程序在调试模式下运行得很顺畅。

-1

我使用的解决方法是在启动调试器之前以管理员模式本地运行msvcmon.exe。然后启动附加窗口并提供远程调试端口。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接