Gio*_*iox 5 .net visual-studio-2010 visual-studio visual-studio-2012
这是我使用任何 Visual Studio(2010 专业版、2012 专业版和 2015 社区版)的一周,几分钟后,我启动了一个项目,甚至是空的,没有接触任何东西,启动了一个完全消耗一个核心的线程,100% 使用率。从任务管理器中我看到devenv.exe消耗了 25% 的 CPU,我有 4 个核心,所以 100/4=25。
通过使用 Process Explorer,我看到clr.dll ( clr.dll!GetCLRFunction+10793 ) 正在连续运行。
这是线程的堆栈跟踪:
ntoskrnl.exe!KeWaitForMultipleObjects+0xc0a
ntoskrnl.exe!KeAcquireSpinLockAtDpcLevel+0x712
ntoskrnl.exe!KeWaitForSingleObject+0x19f
ntoskrnl.exe!PoStartNextPowerIrp+0xba0
ntoskrnl.exe!PoStartNextPowerIrp+0x183d
ntoskrnl.exe!IoFreeErrorLogEntry+0x297
System.ni.dll+0x19ab70
System.ni.dll+0x1de979
System.ni.dll+0x19ab70
System.ni.dll+0x199d42
System.ni.dll+0x1ded86
System.ni.dll+0x1de5fa
System.ni.dll+0x1de397
System.ni.dll+0x1da636
System.ni.dll+0x1c755e
System.ni.dll+0x19ebfb
System.ni.dll+0x19eccf
clr.dll+0x1396
clr.dll+0x291f
clr.dll!PreBindAssemblyEx+0x1822c
clr.dll!PreBindAssemblyEx+0x183af
mscorlib.ni.dll+0x2f1213
mscorlib.ni.dll+0x2f103e
mscorlib.ni.dll+0x2ffb72
mscorlib.ni.dll+0x30a366
mscorlib.ni.dll+0x2ffd30
mscorlib.ni.dll+0x3aebef
mscorlib.ni.dll+0x3aeaba
clr.dll+0x291f
clr.dll+0x9aff
clr.dll!PreBindAssembly+0xb165
clr.dll!PreBindAssembly+0x9653
clr.dll!PreBindAssembly+0x96bd
clr.dll!PreBindAssembly+0x978a
clr.dll!PreBindAssembly+0x9805
clr.dll!PreBindAssembly+0xb0f9
clr.dll!PreBindAssembly+0xa166
clr.dll!GetCLRFunction+0x107dc
ntdll.dll!RtlInitializeExceptionChain+0x63
ntdll.dll!RtlInitializeExceptionChain+0x36
Run Code Online (Sandbox Code Playgroud)
有人从上面几行中明白了什么吗?
在互联网上,我发现了一些禁用 Visual Studio 的一个或另一个插件/扩展的建议,但没有一个解决了问题,而且我在所有 VS 版本上都有问题(具有不同的扩展并且同时发生)
我认为这与我最近更新的.net Framework 4.5 ~4.6有关。我怎样才能了解问题出在哪里以及如何解决?
要了解为什么 Visual Studio 会导致如此高的 cpu 使用率,您需要安装 Windows Performance Toolkit,它是 Windows 10 SDK的一部分(如果您使用 Windows 7,请使用 SDK Build 15086,这是适用于 Windows 的最后一个版本7、对于 Windows 8,8.1 或 Windows 10,请使用最新 Windows 10 SDK 中的 WPT。
运行WPRUI.exe,选择“第一级”、“CPU 使用率”,然后单击“开始”。捕获 1 分钟的 CPU 使用情况,现在单击“保存”将数据保存到 ETL 文件中。
现在双击生成的 ETL 文件以在 Windows 性能分析器 (WPA.exe) 中打开 ETL,将 CPU 使用率(采样)拖放到分析窗格中:
现在在 WPA 中加载调试符号并展开堆栈devenv.exe
就我而言,Telerik 扩展会导致 Visual Studio 内的 CPU 使用率。
| 归档时间: |
|
| 查看次数: |
2495 次 |
| 最近记录: |