一。在linux服务器上 top :找到cup或者内存占用过高的那个进程pid 二。top -Hp 【进程pid】 可以继续跟踪该进程中的所有线程信息,找到cup或者内存过高的那个线程,将该线程id转化为16进制,以便在后面的线程堆栈信息中用该关键字查看 三。jstack 【进程pid】> jsta ...
分类:
编程语言 时间:
2018-05-09 14:42:29
阅读次数:
205
jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到 当时运行的java ...
分类:
数据库 时间:
2018-05-09 01:10:38
阅读次数:
219
1、先找到Java的进程 top ps aux | grep java 2、根据pid找到线程 top -Hp pid ps -mp pid -o THREAD,tid,time 3、得到线程id的十六进制值 printf "%x\n" tid 4、输出线程的堆栈信息,在jdk的bin目录下执行js ...
分类:
Web程序 时间:
2018-05-07 19:51:24
阅读次数:
215
JVM基础 垃圾回收器 GC日志 jmap, jhat命令 jstat命令 线程dump ...
分类:
编程语言 时间:
2018-05-06 20:10:30
阅读次数:
236
一 .概述 死锁是一种状态: 多个线程争夺多个锁,如果控制不当,每个线程都获得一部分锁而无法获取所有的全部的锁,此时就会发生死锁. 在一般状态下,死锁在没有外界的干预下会一直陷入到等待当中,也就是说,程序根本无法运行下去. 二 . 死锁 死锁的状态是我们不想看见的,但是当我们遇到的时候我们需要进行诊 ...
分类:
其他好文 时间:
2018-04-29 15:24:15
阅读次数:
179
1、top找出耗时pid进程或ps -ef |grep xxx 找出pid 2、ps p 3036 -L -o pcpu,pid,tid,time,tname,cmd 3036为pid 3、printf "%x\n" 3046 4、jstack -l 3046 3、printf "%x\n" 304 ...
分类:
Web程序 时间:
2018-04-16 21:32:26
阅读次数:
193
jstack用于生产java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条线程正在执行的方法 堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,比如线程间死锁、死循环、请求 外部资源导致长时间等待等。线程出现停顿的时候通过jstack命令可查看各个线程的调用堆栈 线程 ...
分类:
编程语言 时间:
2018-04-09 17:19:10
阅读次数:
160
1 jstack jstack是JDK自带的一种线程栈跟踪工具,用于生成java虚拟机当前时刻线程快照。在定位线程卡顿、死锁、block等原因的时候非常有用。使用方法是: jstack [ l] pid 2 Monitor Monitor是java中用以实现线程同步和互斥的主要手段,每一个对象有且只 ...
分类:
Web程序 时间:
2018-04-06 13:53:31
阅读次数:
825