首先自定义了一个有问题的School.java类,会导致cpu占用过多。首先传到服务器上,并且运行。
通过top 命令查询到服务器中占用cpu比例最高的进程
通过命令ps H -eo pid,tid,%cpu | grep 进程号 查询对应进程号下的每个线程所占用的cpu比例
ps H -eo pid,tid,%cpu | grep 进程号
查询到4362对应的十六进制为0x110a,可在最终执行jstack命令打印的结果中查看对应的信息
执行命令jstack轻松地知道java程序是如何崩溃和在程序何处发生问题
jstack 4362
jstack 进程号
最终,成功发现问题!!!