jdk内置工具jstack查询有问题代码(具体到哪一行)

走远了吗. 提交于 2019-12-03 10:16:40

1,编写死循环代码类JstackCase;

2,编译该类

3,放到linux系统,并运行

4,新建连接到linux,使用top命令:查看当期那CPU使用情况

5.找到CPU使用率较高的线程ID:

命令:ps p 16480 -L -o pcpu,pid,tid,time,tname,cmd

 

 

 6.查看进程16480中的信息:

命令:jstack -l 2511> 2511.pid

vi查看16480.pid文件:

代码: 

import java.util.concurrent.Executor;import java.util.concurrent.Executors;public class JstackCase{   public static Executor executor = Executors.newFixedThreadPool(5);   public static Object lock = new Object();      public static void main(String[] args){      new Thread(new Task(),"asd").start();   }      static class Task implements Runnable{            @Override      public void run(){         synchronized(lock){            calculate();         }      }            public void calculate(){         int i = 0;         while(true){            System.out.println(i++);         }      }   }}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!