Java CPU占用过高问题定位-思路

定位思路,总体来说很清晰

  1. 找到具体是哪一个线程让CPU跑飞
  2. 找到线程执行的具体代码

个人认为其实在程序执行大量数据处理的时候cpu高是正常的,但是在没处理任务的时候cpu不降的话那就有问题了

找到对应的线程

在linux环境中
使用top命令,可以直接显示线程相关的信息

在windows环境中可以借助一个工具【Process Explorer】查看进程中的线程

找到对应的代码

通过jstack命令导出进程的线程信息,通过上面获得的线程id进行日志查看;
贴一个比较完整文档的地址:【传送门】

猜你喜欢

转载自blog.csdn.net/Aqu415/article/details/120584547