下面是详细步骤:

1. 首先确定进程的 ID ,可以使用 jps -v 或者 top 命令直接查看

2. 查看该进程中哪个线程占用大量 CPU,执行 top -H -p [PID] 结果如下:

可以发现编号为 350xx 的共有 9 个线程占用了 100% 的 CPU,好,接下来咱们随便取一个线程 ID ,假设我们想看编号为 35053 这个线程。

首先将 35053 转成 16 进制是 88ED (可以用开源中国在线工具转换)

3. 接下来我们将进程中的所有线程输出到一个文件中,执行:jstack [PID] > jstack.txt

4. 在进程中查找对应的线程 ID,执行:cat jstack.txt | grep -i 88ED

结果是:

"HTTP Request From : /xxxx/blog/323432(120.27.143.239)" #266 daemon prio=5 os_prio=0 tid=0x00007fcda4146800 nid=0x88e runnable [0x00007fcd54178000]

由此可以看出在请求 /xxxx/blog/323432 链接的时候,服务器的处理线程占用了 100% 的 CPU。

原文地址:分析占用了大量 CPU 处理时间的是Java 进程中哪个线程
标签:java   cup100%   线程

智能推荐

最新文章

  1. java面试题——HashMap和Hashtable 的区别
  2. mac下开发IOS代码管理
  3. js-form进行reset重置
  4. 解决Jenkins console输出乱码
  5. HTML5——购物车
  6. ElasticSearch安装部署
  7. eucalyptus,openNebula云构建漫谈
  8. JavaScript入门(6)
  9. ETL概述
  10. Executor框架
  11. wemall app商城源码中android按钮的三种响应事件
  12. jQuery.ajax success 与 complete 区别
  13. burpsuite + sqlmap 日志导出批量扫描
  14. 【备忘】Idea的那些事
  15. JMeter 正则表达式提取器结合ForEach控制器遍历提取变量值
  16. Flask之勾子,错误捕获以及模板语法
  17. Flutter - ListView禁止用户上下滑动
  18. mac 下vim 配置文件
  19. 一张图看懂css的position里的relative和absolute的区别
  20. win 10 下面安装 mysql-8.0.12-winx64 的过程

热门文章

  1. 每日英语:Upgrade Your Life: How to speed up your PC (or Mac)
  2. 《软件测试自动化之道》读书笔记 之 基于Windows的UI测试
  3. Python3自定义http/https请求拦截mitmproxy脚本
  4. 【九天教您南方cass 9.1】 04 编码法Ⅱ绘制地形图
  5. Tip 18 – How to decide on a lifetime for your ObjectContext
  6. ubuntu GCC 版本切换
  7. java-信息安全(十)-数字签名算法DSA
  8. 如何用Baas快速在腾讯云上开发小程序-系列1:搭建API & WEB WebSocket 服务器
  9. VBA字符串处理大全
  10. JS正则校验