如何分析.NET RFID标签管理系统CPU暴涨原因?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1786个文字,预计阅读时间需要8分钟。
一:背景
1.讲述故事:在某个阶段,有位朋友提到他的程序遇到了CPU暴增现象。
2.前段时间:朋友买的程序出现暴增,问题比较棘手。
3.找到帮助:当他找到我时,希望能得到我的技术帮助,找出问题所在。
4.分析问题:经过分析,问题显得比较经典。
一:背景 1. 讲故事前段时间有位朋友说他的程序 CPU 出现了暴涨现象,由于程序是买来的,所以问题就比较棘手了,那既然找到我,就想办法帮朋友找出来吧,分析下来,问题比较经典,有必要和大家做一下分享。
二:WinDbg 分析 1. CPU 真的爆高吗一直关注这个系列的朋友应该知道,用 !tp 验证即可。
0:161> !tp
CPU utilization: 81%
Worker Thread: Total: 486 Running: 486 Idle: 0 MaxLimit: 8191 MinLimit: 24
Work Request in Queue: 0
--------------------------------------
Number of Timers: 1
--------------------------------------
Completion Port Thread:Total: 6 Free: 1 MaxFree: 48 CurrentLimit: 6 MaxLimit: 1000 MinLimit: 24
果然 CPU =81% ,并且当前的 481 个工作线程全部打满,以经验看可能是遇到锁什么的,不过还是先从是否触发 GC 看起。
要查看是否触发 GC,可以用 !t -special 看看是否有 SuspendEE 字样。
本文共计1786个文字,预计阅读时间需要8分钟。
一:背景
1.讲述故事:在某个阶段,有位朋友提到他的程序遇到了CPU暴增现象。
2.前段时间:朋友买的程序出现暴增,问题比较棘手。
3.找到帮助:当他找到我时,希望能得到我的技术帮助,找出问题所在。
4.分析问题:经过分析,问题显得比较经典。
一:背景 1. 讲故事前段时间有位朋友说他的程序 CPU 出现了暴涨现象,由于程序是买来的,所以问题就比较棘手了,那既然找到我,就想办法帮朋友找出来吧,分析下来,问题比较经典,有必要和大家做一下分享。
二:WinDbg 分析 1. CPU 真的爆高吗一直关注这个系列的朋友应该知道,用 !tp 验证即可。
0:161> !tp
CPU utilization: 81%
Worker Thread: Total: 486 Running: 486 Idle: 0 MaxLimit: 8191 MinLimit: 24
Work Request in Queue: 0
--------------------------------------
Number of Timers: 1
--------------------------------------
Completion Port Thread:Total: 6 Free: 1 MaxFree: 48 CurrentLimit: 6 MaxLimit: 1000 MinLimit: 24
果然 CPU =81% ,并且当前的 481 个工作线程全部打满,以经验看可能是遇到锁什么的,不过还是先从是否触发 GC 看起。
要查看是否触发 GC,可以用 !t -special 看看是否有 SuspendEE 字样。

