Я анализирую дампы потоков для высокой загрузки ЦП, но все, что я вижу, - это то, что большинство потоков показывает сообщение: «Этот поток ожидает ввода. NET Блокировка, принадлежащая потоку», и в основном все вызывают Microsoft Practices EnterpriseLibrary ConfigurationChangeWatcher. Мы используем MS Ent Lib 5 для регистрации. Я не понимаю, как все это может быть связано с высокой загрузкой ЦП, может кто-нибудь помочь мне проанализировать дампы и пролить немного света.
ntdll!NtQueryFullAttributesFile+14
KERNELBASE!GetFileAttributesExW+d2
mscorlib_ni+4daefa
mscorlib_ni+4db268
clr!LegacyNGenTryEnumerateFusionCache+d24e8
0x000000d3`906fdd30
0x000000d3`906fdce8
0x000000d3`00000001
0x000002a4`a28f1e00
0x000000d3`00000000
0x000002a1`00000000
mscorlib_ni!System.Threading.TimerQueueTimer.Change(UInt32, UInt32)+60
mscorlib_ni!System.Threading.Timer.Change(Int32, Int32)+6b
System_ni!System.Timers.Timer.set_Enabled(Boolean)+59
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Storage.ConfigurationChangeWatcher.pollTimer_Elapsed(System.Object, System.Timers.ElapsedEventArgs)+d8
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Storage.ConfigurationChangeWatcher.pollTimer_Elapsed(System.Object, System.Timers.ElapsedEventArgs)+a6
System_ni!System.Timers.Timer.MyTimerCallback(System.Object)+103
mscorlib_ni!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)+163
mscorlib_ni!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)+14
mscorlib_ni!System.Threading.TimerQueueTimer.CallCallback()+ba
mscorlib_ni!System.Threading.TimerQueueTimer.Fire()+87
mscorlib_ni!System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()+40
mscorlib_ni!System.Threading.ThreadPoolWorkQueue.Dispatch()+152
Я также вижу много объектов таймера в куче
System.Timers.Timer (81735 objects )
Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Storage.ConfigurationChangeFileWatcher (81735 objects )
System.Threading.TimerHolder (81769 objects )