.NET医院公众号系统为何线程CPU双高,具体原因是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2497个文字,预计阅读时间需要10分钟。
一、背景+1.+ 讲故事+上周四有位朋友加我微信咨询他的程序出现CPU+线程+双高的情况,希望我能帮其排查。以下是他提供的情况截图:+ 从截图看,只有线程崩高,没有看到CPU崩高的哈,有意思的是这位朋友说...
一:背景
1. 讲故事
上周四有位朋友加wx咨询他的程序出现 CPU + 线程 双高的情况,希望我能帮忙排查下,如下图:
从截图看只是线程爆高,没看到 cpu 爆高哈😂😂😂,有意思的是这位朋友说他: 一直在手动回收 ,不知道为啥看着特别想笑,但笑着笑着就哭了。
可能朋友知道老规矩,发了两份dump过来,接下来我就可以开工了,既然说高峰期分分钟上千个线程,和我前几天分享的那篇 串口 的问题很像,肯定是个别线程退不出 锁,导致 CLR 需要创建更多的线程池线程来应付不断累积的 Work Queue,所以还是得优先看 同步块表,还是那句话,十个人用锁,八个人用 lock 🤣🤣🤣。
二: windbg 分析
1. 查找 CLR 同步块表
可以用 !syncblk 看看有没有 lock 的情况。
本文共计2497个文字,预计阅读时间需要10分钟。
一、背景+1.+ 讲故事+上周四有位朋友加我微信咨询他的程序出现CPU+线程+双高的情况,希望我能帮其排查。以下是他提供的情况截图:+ 从截图看,只有线程崩高,没有看到CPU崩高的哈,有意思的是这位朋友说...
一:背景
1. 讲故事
上周四有位朋友加wx咨询他的程序出现 CPU + 线程 双高的情况,希望我能帮忙排查下,如下图:
从截图看只是线程爆高,没看到 cpu 爆高哈😂😂😂,有意思的是这位朋友说他: 一直在手动回收 ,不知道为啥看着特别想笑,但笑着笑着就哭了。
可能朋友知道老规矩,发了两份dump过来,接下来我就可以开工了,既然说高峰期分分钟上千个线程,和我前几天分享的那篇 串口 的问题很像,肯定是个别线程退不出 锁,导致 CLR 需要创建更多的线程池线程来应付不断累积的 Work Queue,所以还是得优先看 同步块表,还是那句话,十个人用锁,八个人用 lock 🤣🤣🤣。
二: windbg 分析
1. 查找 CLR 同步块表
可以用 !syncblk 看看有没有 lock 的情况。

