美文网首页
Java死循环排查及线程状态

Java死循环排查及线程状态

作者: 知而乐者 | 来源:发表于2021-04-05 21:21 被阅读0次

    背景

    在生产环境偶尔会有cpu突然飙高的时候,需要定位问题,判断逻辑是否有问题

    方法

    • 找出占用cpu最大的进程
      使用top命令找出使用cpu最多的进程
    • 找出暂用最多的线程
      使用 top -Hp <pid>来找到占用最多的线程
    • 打印线程信息
      使用jstack -l <pid>来打出线程快照,通过上面找到的线程信息来定位问题代码
      可以使用线程名称查找,也可以通过线程ID查找(需要转成16进制),比如12907对应326b

    线程状态总览(可以查看Thread#State类中来确定线程有哪几种状态)


    image.png

    相关文章

      网友评论

          本文标题:Java死循环排查及线程状态

          本文链接:https://www.haomeiwen.com/subject/nicjkltx.html