windows服务器排查java 程序 cpu100%步骤
1.查消耗cpu最高的进程pid
2.根据pid查消耗cpu最高的线程id
3.根据线程id查出对应的程序线程,进行处理
准备死循环代码
fun main(args: Array<String>) {
println("开始")
var random = 0
while (random < 100) {
random = random.times(100)
}
println("结束")
}
打开Process Explorer,查看进程:
发现最耗cpu的进程为java.exe ,pid 67988,其中最耗cpu的线程为68168,转化为16进制为10a48,
接着执行命令
C:\Users\Koruit>jstack -l 67988 > d:/67988.stack
生成进程对应的快照文件,打开文件,搜索10a48,如下图所示:
可以看到TestProcessor.kt文件11行有异常,
75)]
可以看到TestProcessor.kt文件11行有异常,