我已经使用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
有人能从上面的几行中理解到什么吗?
在互联网上,我找到了几个建议来禁用Visual Studio的一个或另一个插件/扩展,但是它们都没有解决问题,而且我在所有的VS版本上都遇到了这个问题(使用不同的扩展名并同时发生)。
我认为这与我最近更新的.NET Framework 4.5 ~4.6有关。 如何确定问题所在以及如何解决它呢?