Linux 之 排查程序后台占用CPU过高

骑猪看日落 2022-11-29 13:06 352阅读 0赞

java服务器查看CPU占用率过高问题

  1. top 查看异常程序
  2. top -H -p pid 查看异常的线程
  3. printf “%x\n” 线程号 将线程号转化为16进制
  4. 使用jstack 进程号 | grep 16进制异常线程号 -A90 来定位异常代码位置。

C++服务器查看后台程序异常

  1. top 查看异常程序
  2. pstack pid 查看可疑的线程,找到对应线程的LWP
    或者使用 top -H -p pid 查找可疑的线程
  3. pstack pid | vim - 查看可疑堆栈
    以上初步定位到问题,如果想具体查看问题位置。
  4. gdb attach pid
  5. thread threadid threadid可用pstack看到,是当前线程号,不是线程LWP
  6. bt
  7. frame x
  8. p xxx

发表评论

表情:
评论列表 (有 0 条评论,352人围观)

还没有评论,来说两句吧...

相关阅读

    相关 redis cpu占用排查

    redis是用"单线程-多路复用io模型"来实现高性能的内存数据服务的,这种机制避免了使用锁,但是同时这种机制在进行sunion之类的比较耗时的命令时会使redis的并发下降。