我正在研究一个复杂的 VS 2012 解决方案(ASP.NET 项目、一堆类库项目、链接到 TFS 源代码存储库的解决方案等)。我还运行 SQL Server,作为 Windows 服务,我的解决方案使用它。
出于某种原因,Visual Studio 启动了它自己的 SQL Server 实例(我看到两个 sqlservr.exe 实例,一个带有 services.exe 父进程,一个带有 devenv.exe 父进程)。VS 启动的第二个进程似乎与我正在处理的应用程序完全无关(杀死进程似乎没有任何效果,我仍然可以同时使用 VS 和我的应用程序,但是如果我杀死,VS 总是在一段时间后重新启动它它)。我最好的猜测是 VS 使用这个实例来管理自己的内部数据(Intellisense?TFS 源控制数据?)
这一切都不是问题,除了一件事:这个进程经常进入高 CPU 使用模式,通常是 90% 或以上。正如你所想象的,这让我发疯了——在开发过程中 CPU 使用率通常接近容量,而终止进程只是暂时有帮助。我已经尝试了调试 SQL Server 高 CPU 使用率时使用的所有标准技术,但无济于事,因为使用所有 SQL 工具我只能连接到“真实”SQL Server 实例,而不是 Visual 创建的“特殊”实例工作室。我怎样才能消除这个问题?任何帮助将不胜感激。