Visual Studio 2013 更新2使核心达到最大值

42
我最近在一个Windows 7虚拟机上安装了Visual Studio 2013 Professional Update 2。之前我一直在使用VS 2012并没有任何问题,但是我想要升级。一切正常运行了一个星期,但现在对于某个项目,IDE变得非常缓慢,任务管理器报告我的4核机器持续使用了25%的CPU。重启VS和电脑都没有用。
如果我在安全模式下启动VS devenv.exe /SafeMode问题会消失,这只针对特定的项目。
我已经运行了Process Explorer,并发现了这个线程
(注意:不是高亮显示的那个,而是顶部的线程)

IsAssertEtwEnabled 然后我找到了这个相关的论坛:https://connect.microsoft.com/VisualStudio/feedback/details/873579/high-cpu-usage-possibly-after-updating-to-update-2 但是我没有安装Power Tools或Alternating Line Color扩展程序。
如果不是任何扩展程序(我没有添加任何扩展程序),问题可能是什么?我唯一能想到的就是NuGet包。 编辑 我在这个帖子Asp.Net CPU issue working with Kendo UI treeview after Visual Studio 2013 Update 2中找到了这个线索,并尝试禁用Browser Link但没有成功。 编辑 我还按照这里VS2013 permanent CPU usage even though in idle mode所述禁用了源代码控制,但是显然在Update 2中仍未修复该问题,正如该问题所述。

编辑 调试并停止有问题的线程 (主线程) 常常会给我返回以下堆栈跟踪信息: stack trace


8
谁曾投票认为这个问题“过于宽泛”,我该如何缩小范围?我已经给出了有问题的线程,并列出了我已经采取的调试步骤以及我研究过的可能原因。我认为这个问题相当具体,与Visual Studio中的特定线程有关。 - Clint Powell
2
如果您附加调试器(即使用VS附加到VS)并重复暂停,那么通常有哪些线程的调用堆栈存在问题?(您可以右键单击调用堆栈并选择“加载符号”以获取实际的函数名称,因为微软为其所有产品发布公共符号。) - Cameron
啊哈,谢谢。你能往右滚动一点吗?另外,如果你在立即窗口或监视窗口中键入“path”,它的值是什么?它是指向你项目文件之一的路径吗? - Cameron
2
那是一个非常尴尬的堆栈跟踪,希望有一些代码可以将该项再次从集合中删除,否则你将会很快耗尽内存。你需要做一些工作,没有人能够为你调试这些插件。逐一禁用它们,直到找到罪犯。 - Hans Passant
我几天前安装了2013最新版,并未添加任何插件/扩展。如何禁用内置的插件/扩展? - Clint Powell
显示剩余4条评论
9个回答

82

在Visual Studio 2013 Update 4上,我已经为同一个问题苦苦挣扎了几天。

在这里禁用“启用浏览器链接”选项

enable browser link

对我来说解决了这个问题。


1
浏览器链接也给我在每个浏览器中带来了巨大的内存问题。IE、Firefox和Chrome的CPU占用率约为20%,内存使用量每几秒钟就会增加约20兆。 - LarryBud
看起来这也可能是我的问题(在过去的几周里,我还禁用了其他扩展,包括禁用源代码控制-设置为无)。现在我的可怜小笔记本电脑风扇听起来不像一架正在起飞的喷气式飞机,这里真的太安静了,难以置信。 - Cody
我发现在我的CPU占用率飙升的同时,Procexp.exe正好也在运行。当我禁用浏览器链接时,CPU占用率立即恢复到正常水平。 - Alex Dresko
问题已解决!谢谢! - Mr. Muh
解决了我的问题,当我使用Chrome开发者工具时,它们占用了2GB的内存!!禁用浏览器链接也解决了这个问题! - Umair
你是我的英雄!真遗憾这个功能(能够实时查看标记更改)有如此重大的缺陷。 - Don Cheadle

7

到目前为止我找到的唯一解决方法是:在打开项目后,在“解决方案资源管理器”中卸载并重新加载启动项目。这将使CPU使用率降至正常水平(约0%空闲)。


1
好的,现在你有了除插件之外的另一个角度。那个项目有什么特别之处?为了测试目的,如果从项目中删除大部分文件会发生什么?有哪些引用或NuGet包?你是否以某种方式对另一个项目存在循环依赖? - demoncodemonkey
1
我删除了除启动项目以外的所有项目,然后从项目中删除了所有引用(甚至是 System)和所有文件。现在它每秒钟在 5-10% 和 25% 之间波动。一个空项目正在做这个!我甚至将设置重置为默认值。 - Clint Powell
抱歉,除了重新安装 VS 外,我不确定还有什么尝试的余地 :( - demoncodemonkey
1
谢谢Clint,你的回答解决了我的问题。(VS2013 - Update 3) - BillD
你的答案也解决了我的问题。(VS2013 - 更新3) - Arctic

4
根据我从谷歌搜索到的信息,Microsoft.VisualStudio.JavaScript.Web.Extensions.dll这个DLL文件与Web Essentials插件有关。如果你禁用这个插件(或者禁用所有插件),问题是否会消失呢?
如果是插件的问题,要么就忍受它被禁用,要么就联系开发人员。

我没有安装Web Essentials插件。正如我所提到的,如果我启用了SafeMode(据说只运行默认设置和没有扩展程序),它确实解决了问题。 - Clint Powell
1
拍了。也许对别人来说值得一试。该死的VS。 - Matt J.

3
我知道这个帖子有点老,但如果有人需要的话...
我也遇到了这个问题,并且我可以肯定地说,这与Web Essentials有关。但更具体地说,是当我在IDE中打开.less或.css文件时,Web Essentials会导致这个问题。
我已经重新启动了IDE,使用情况恢复正常,但是只要我打开一个css文件,CPU就开始飙升,然后整个IDE变得无法使用。关闭所有less/css文件似乎最终可以使CPU/IDE恢复正常。
我迄今为止的两个解决办法:
  1. 卸载WE :-(
  2. 使用Notepad++编辑我的.less和.css文件,然后在IDE中进行其他操作
这两种方法都不是特别好的解决办法!
这是使用VS2013 Pro + Update 2和最新版本的WE的情况。下一步是看看VS update 3 RC +最新夜间版的WE是否有同样的问题。
编辑:我突然想到一件事。我最近不得不从VS Premium改为VS Pro,我不记得在Premium版本中出现过这个问题。我想知道这是不是只有Pro版本才有的问题?

谢谢你的提示!我在Visual Studio中不编辑任何less、css或sass(我使用Sublime进行Web开发),但这将有助于那些遇到类似问题的人。 - Clint Powell
我在使用带有更新4的VS 2013高级版时遇到了同样的问题,禁用“浏览器链接”后,CPU使用率立即恢复正常。 - Ty H.

2

我在这里遇到了类似的问题(25-30%的CPU使用率),并收到了一条关于Microsoft SQL Server Compact 4.0未安装的消息(不确定为什么,它应该随着Visual Studio一起安装)。

在单独下载和安装后,CPU使用问题得到解决。


2
我知道你说你没有安装任何扩展,但你可能需要再检查一下。看起来Web Essentials扩展与VS 2013 Update 2不兼容,可能会导致所描述的行为。解决方法是下载最新的Web Essentials夜间构建版本。你需要手动下载,因为Nuget上最后一个稳定版本已经过时了,它还没有这个修复程序。

更多信息和下载链接在这里


我刚试了一下。如果安装Web Essentials夜间版(之前没有安装),问题仍然存在。 - Clint Powell

1
我的CPU负载在核心i7上为15-25%,在删除项目文件夹中的.sdf文件后降至0%。

0

我刚遇到了这个问题;对我来说,安装更新5解决了它。

这个问题是在安装最新的MS更新后开始出现的;下面是完整的列表(注意:我的日期格式是英国的:DD/MM/YYYY;今天是2015年10月12日 - 列出的一些修复程序据称将在11日安装):

get-hotfix `
| ?{$_.InstalledOn -gt ((get-date).AddDays(-7))} `
| ft Description, HotfixId, InstalledOn -AutoSize

Description     HotfixId  InstalledOn        
-----------     --------  -----------        
Security Update KB3046017 08/12/2015 00:00:00
Security Update KB3060716 08/12/2015 00:00:00
Update          KB3064209 08/12/2015 00:00:00
Security Update KB3071756 08/12/2015 00:00:00
Security Update KB3072305 08/12/2015 00:00:00
Security Update KB3075220 08/12/2015 00:00:00
Update          KB3075851 08/12/2015 00:00:00
Security Update KB3076895 08/12/2015 00:00:00
Security Update KB3076949 08/12/2015 00:00:00
Security Update KB3078071 08/12/2015 00:00:00
Security Update KB3078601 08/12/2015 00:00:00
Security Update KB3079757 08/12/2015 00:00:00
Security Update KB3081320 11/12/2015 00:00:00
Security Update KB3092601 11/12/2015 00:00:00
Security Update KB3100773 11/12/2015 00:00:00
Security Update KB3101246 11/12/2015 00:00:00
Security Update KB3101722 11/12/2015 00:00:00
Security Update KB3101746 11/12/2015 00:00:00
Update          KB3102810 11/12/2015 00:00:00

在使用Visual Studio或注意到这个问题之前,我已经卸载了与Outlook相关的另一个热修复程序,这导致它以安全模式打开。


这只是暂时解决了问题;在另一次重启后,问题又出现了;尽管没有打开任何项目(因此浏览器链接未被使用)。 - JohnLBevan

0
说实话,我曾经遇到过与Server Compact 4缺失有关的问题,我的C++解决方案一直占用25%的CPU使用率。尽管我已经安装了Server Compact 4 SP1,但我的系统是Windows 7 64位。我卸载了SP1,并下载并安装了Server Compact 4,现在一切都正常了。当然,我也恢复了Intellisense。

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