Visual Studio 2013 预览版经常无响应

4
我安装了Visual Studio 2013 Preview以尝试使用,但遇到了一些非常严重的性能问题。每次我打开一个文件并立即尝试关闭它、编辑文件、保存文件等操作时,IDE会停止响应约15秒钟。
我已经查阅了stackoverflow、博客、网络搜索等所有性能优化方面的内容,但都没有用(例如,清理临时文件夹、禁用插件和扩展、删除.suo文件等)。
使用/safemode,性能问题消失了,但我找不到可能不同之处的地方,因为我没有安装任何插件、NuGet包或扩展。
使用SysInternals Process Explorer,当它停止响应时,我只能看到devenv.exe进程使用的核心占用率达到100%。此时我没有看到任何网络或硬盘活动,也没有其他进程变得活跃。
我已经重新安装了Visual Studio,但没有成功,并在另一台开发机上安装了它,那里似乎工作得很好。
有人有什么想法吗?
谢谢!
更新:在Process Explorer中,“其他I/O Delta”显示devenv.exe进程锁定时大约为200,000 /秒。仍在寻找……
更新2:我想我应该补充一下,这台电脑是Dell Vostro 460,i7-2600 @ 3.4Ghz,8GB RAM,Windows 7,1TB HDD,剩余550GB空间,为我所做的工作提供了足够的动力。在调试期间关闭了所有其他应用程序,包括VIPRE A / V和Malwarebytes。
更新3:也许更接近了……使用Process Monitor(喜欢SysInternals的东西!),由于某种原因,devenv.exe正在解析/搜索我的整个C:\ Projects \文件夹。我将所有项目文件夹放在C:\ Projects \下,其中每个项目都有自己的子文件夹,大约有20个项目。这里变得很奇怪。在/safemode中,devenv仅解析当前项目的文件夹,而不是整个父文件夹。Projects有6,271个文件夹和29,914个文件。我尝试创建一个新的c:\ Projects2013 \文件夹,创建了一个新的测试项目,devenv试图解析完整的父Projects2013文件夹,但在/safemode中只解析Projects2013 \ Sample。
显然,位于Projects2013中的新项目运行速度很快,因为它解析的文件要少得多。另一台计算机运行良好,因为我保留了默认的Projects路径,并且该文件夹中没有其他项目。现在到底是什么在做这件事,为什么正常模式和安全模式之间的文件夹路径不同?是时候深入研究工具、选项了……呃!
这是ProcMon的截图:

最终更新 - 已解决! 问题出在git上。我的本地存储库设置在c:\Projects\,其中包含我的各种项目子文件夹。我为它们创建的转储文件帮助他们缩小了问题范围到git上。删除本地存储库修复了我的性能问题,现在VS 2013至少可用了。编程团队仍需要解决目录的持续重新解析问题。任何具有非常大的存储库的人最终都将遇到此问题。


我向 Microsoft 发送了一些反馈,现在他们的支持团队想要查看它。创建转储文件和所有有趣的东西。也许已经发现了一个漏洞。我们拭目以待! - Geoff Gunter
我在使用 Visual Studio 2013(12.0.21005.1 REL)发布版时遇到了类似的问题。你从微软那里得到了更多的评论吗?目前,VS2013与Git存储库对我来说是无法使用的(频繁卡顿和高磁盘使用率)。 - Justin Stenning
似乎需要很长时间(>2分钟)才能在包含Git存储库的文件夹中创建新的空白Windows Store应用程序项目。 - Justin Stenning
我的问题是通过将事物分解为更小的单独存储库来解决的。虽然这不是真正的解决方法,但自从我现在使用完整版的VS 2013 Premium以来,我就没有遇到过问题了。您可能希望尝试联系开发团队。我使用了VS内置的反馈“发送笑脸”,他们非常负责任。 - Geoff Gunter
1个回答

3

问题已解决!是git引起了这个问题。我有一个本地仓库,位于c:\Projects\,其中包含所有我的各种项目子文件夹。我为VS程序员创建的调试转储文件使他们能够将问题缩小到git上。删除本地仓库解决了我的性能问题,现在至少可以使用VS 2013了。然而,VS编程团队仍需要解决持续重新解析文件夹的问题。任何拥有非常大的仓库的人最终都会遇到这个问题。


2
顺便说一下,我也向微软提出了这个问题,他们的最终回复是“按设计来的”。 - Justin Stenning
1
你能提供更多关于你是如何修复它的信息吗?我不理解你做了什么。 - Escobar5
问题在于我有一个 Git 存储库,用于所有项目的根文件夹。这种方式处理的文件/文件夹太多了。我为每个项目创建了单独的 Git 存储库,问题就解决了。本质上,这是一个容量问题。 - Geoff Gunter

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