为什么devenv(VS2015)不断读取大文件?

时间:2017-11-17 01:18:11

标签: visual-studio-2015

我正在使用VS2015,并注意到它在最近几周内没有反应。它在保存源文件时会冻结几秒钟,有时需要等待几分钟才能启动构建,并且在CPU使用率较低的情况下构建速度非常慢。重启没有帮助。最后我得到了procmon,发现devenv.exe不断读取我存储在硬盘上的一些大型测试文件。这些文件不是我的解决方案的一部分,也绝不是devenv的业务。它只是顺序读取,每秒几十MB,文件一个接一个,一旦它到达结尾(几GB)它似乎再次开始读取它们。难怪它没有反应,因为它不断地将自己交换到虚拟内存!

虽然我通常认为自己不是锡箔帽旅,但我对此很担心,特别是考虑到VS与MS用户帐户和云服务的整合越来越紧密。是否有无辜的解释?

1 个答案:

答案 0 :(得分:0)

答案是Visual Studio内置的Git源代码控制“插件”。当Visual Studio检测到您的项目在Git存储库中时,它将激活该插件,该插件似乎会读取存储库中的每个文件。似乎随时都有变化(例如保存源文件)时,插件会重新遍历存储库中的每个文件。我猜它正在计算哈希值或其他东西。但是显然没有结果的缓存,它正在读取甚至不受版本控制的文件。因此,基本上,这是Microsoft的糟糕设计。道歉会很棒。

要禁用它,请转到“工具”->“选项”,“源代码管理”,“插件选择”,然后将“当前源代码管理插件”设置为“无”。问题和拖延立即得到解决。