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


79

当我调试解决方案时,vs 2017非常缓慢且缓慢,就像它必须在后台运行一些繁重的工作。

因此,它每5秒钟停止“响应”,持续2秒钟,这很烦人。有什么建议?

编辑(尝试建议):

  • 浏览器链接已关闭
  • 停止客户反馈

1
我曾经在BrowserLink运行时遇到过这种情况。我将其关闭,一切再次平稳运行,可能是红色鲱鱼,但值得一试。
克里斯·迪克森

谢谢,但是没有用:/
Muarl

3
您是否尝试停止客户反馈?帮助->发送反馈->设置...->不,我不想参加
Ori Nachum

不幸的是,是的-我一直否认这一点
Muarl'17

您是否打开了智能跟踪?
肯·塔克

Answers:


94

经过一些进一步的调查后,我发现此线程在工具→选项→调试→常规中进行调试 取消选中“启用诊断工具”就可以了!

在 工具→选项→调试→常规中取消选中为ASP.NET启用JavaScript调试会对 性能产生巨大影响。


1
:报告给微软,以便他们可以通过更新修复了vs2017 docs.microsoft.com/en-us/visualstudio/ide/...
magicandre1981

好极了!哇,我每次动作都因为“单击并等待> 5秒”而失去了主意...谢谢!
EaziLuizi

13
我有同样的问题,但是已经禁用了“调试时启用诊断工具”,因此似乎无法完全解决它:-(
SirViver

就我们而言,在社区中运行比在企业中运行快得多。不确定企业可能具有哪些功能,社区会不会导致此?有人猜测吗?
埃里克·古尼

2
也为我修复了它。除非这些功能具有可伸缩性,否则它们确实不应该消失。
试剂盒

14

如果禁用诊断工具不能解决问题,请尝试禁用IntelliTrace,在工具->选项-> IntelliTrace中取消选中启用IntelliTrace。为我工作。


6
IntelliTrace是一个非常有用的工具。而不是禁用整个事情,最好只是禁用使事情变慢的事件。工具→选项→IntelliTrace→IntelliTrace事件。对我来说,一旦我禁用ADO.NET事件日志记录,事情就会很快恢复。
JustMaier

13

我试图自己禁用一些功能,只是为了查看是什么原因造成的。对我唯一起作用的是“工具”>“选项”>“调试”>“常规”>“为ASP.NET启用JavaScript调试(Chrome和IE)”。

我正在将VS2017 Enterprise v15.2用于Asp.net WebForms。


3
谢谢。最终,禁用ASP.NET(Chrome和IE)的启用JavaScript调试对我来说是成功的秘诀
Nick G.

@NickG。很高兴收到您的
来信

4

我也体验当“启用JavaScript调试为ASP.NET(Chrome和IE)”滞后被选中。并且关闭“调试时启用诊断工具”没有帮助。

但是,我还注意到,当我将F12用于Chrome开发者工具时,滞后时间消失了,应用程序执行了。

希望这可以帮助。


谢谢。最终,禁用ASP.NET(Chrome和IE)的启用JavaScript调试对我来说是成功的秘诀
Nick G.

3

隐藏“线程”窗口对我有用。


1
评论为什么要投票?如果您的应用程序运行着许多线程,并且此窗口正在显示,则肯定会大大减慢调试体验
Niels Filter


1
是的,这非常清楚地为我解决了调试器的问题!非常感谢您的小费!不过,奇怪的是我始终可以看到“线程”窗口,但是速度并不总是这样。
Dimitri C.

请注意,仅通过激活另一个选项卡就可以隐藏窗口,因此看不到“线程”窗口。这可能就是为什么有时会出现缓慢而有时不会出现缓慢的原因,这取决于选择了哪个选项卡页面。
Dimitri C.

3

唯一帮助我的事情是禁用Resharper的Debugger选项。如果使用Resharper,请尝试取消菜单中的“编辑器中显示局部变量值”Resharper->选项->工具->调试器

Resharper的调试选项

它对我有帮助。


2

对我有用的是删除解决方案目录中的以下所有文件夹:

  • .vs
  • x64
  • Debug
  • Release

1

我遇到了同样的问题。在调试模式下,我的webforms项目运行非常缓慢。使用Ctrl + F5时,它可以快速运行(与部署时一样)。我发现执行了45次的try / catch块。它什么也没做,只是捕获了我犯的一个错误。我修复了错误,并且在删除try-catch块时-瞧!-恢复全速。

因此,如果您遇到此问题,并且已经尝试了上面的所有解决方案(我已经做了),请寻找经常触发的try catch块。[修复错误:)],然后删除try-catch块。我不敢相信它所带来的改变。当然,应该不应该有任何区别,因为try-catch块没有做任何事情,但是确实有做。



0

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

禁用此功能后,即使保持打开诊断工具,滞后行为也会消失(在调试时依次选择“工具”->“选项”->“调试”->“启用诊断工具”)


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

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

我遇到的问题是,如果从Visual Studio启动,程序运行速度会变慢,结果是线程太多,例如循环中有很多新的System.Threading.Thread()等。我切换了代码,改为使用ThreadPool任务等,缓慢消失了。


0

选择“仅加载指定的模块”可以解决问题(Tools => Options => Debugging => Symbols


0

我也遇到了这个问题,对我来说,它帮助禁用了“工具”→“选项”→“调试”→“常规”中的“启用编辑并继续”选项。


0

就我而言,我有一个从未达到过的断点。我完全忘记了这个断点。有时,向断点添加简单条件会大大降低调试速度。

仅添加此内容以防可能对某人有所帮助。


-1

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.