CPU占用高,最常见的原因是死循环或者类死循环的操作,如果要逐一排查代码,费时费力,可以先用工具

工具1.windbg,windows出品的牛刀一枚
以管理员运行windbg,File->Attach to Process
!runaway //会显示每个线程的CPU占用时间(user mode),里面Time值最大的就是CPU占用最高的线程
~*kb //显示线程的callstack,然后找CPU时间最大的那个Id的callstack,如果有pdb,就可以看到函数行了

工具2. Process Explorer,SysinternalsSuite套件中的兵器(公司后来被Bill收购了)
以管理员启动Process Explorer,双击我们要检查的进程,点击Threads,按CPU从高到底,重排下线程,选择CPU最高的线程,点下面的stack,就可以看到callstack
有这两个工具,基本上CPU高的问题都可以秒了,剩下的就是分析callstack了。

http://blog.csdn.net/lizheng308/article/details/36386209

最新文章

  1. Contains Duplicate III 下标范围<=k 值范围<=t
  2. 【java】spring-data-jpa 集成hibernate实现多条件分页查询
  3. [f]添加css3动画的方法
  4. Java 多线程 —— synchronized关键字
  5. delphi TPopupMenu.Popup
  6. 【JavaScript】JavaScript教程之------------------JavaScript实现
  7. java模式之装饰模式
  8. accp8.0转换教材第8章JavaScript对象及初识面向对象理解与练习
  9. python3的字符串和字节
  10. 编译问题解决:LINK : fatal error LNK1104: 无法打开文件“*.dll”
  11. ffmpeg日志调式
  12. redis 安装和配置
  13. 少女花海自拍撞亡:自拍PK火车速度,没有赢家
  14. java 从spring容器中获取注入的bean对象
  15. 〖Android〗CyanogenMod同步错误的解决
  16. Sqlserver大数据量分区表创建
  17. 基于jQuery悬停图片变色放大特效
  18. 2018-2019 ACM-ICPC, Asia Xuzhou Regional Contest Solution
  19. 使用webuploader实现文件的断点续传
  20. kivy.org - Open source Python library for rapid development of applications

热门文章

  1. 在win7下装ubuntu(硬盘版安装)及遇到的问题
  2. JDK源码学习--String篇(四) 终结篇
  3. JS计算两个日期相差几天
  4. ny 58 最少步数 (BFS)
  5. JVM内存最大能调多大分析
  6. pyqt中使用matplotlib绘制动态曲线 – pythonic
  7. flume 日志采集工具
  8. USACO chapter1
  9. solaris 操作系统配置联网
  10. 浅析JQuery中的html(),text(),val()区别