一、线程5种状态 新建状态(New) 新创建了一个线程对象。 就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 运行状态(Running) 就绪状态的线程获取了CPU,执行程序代码。 阻塞状态 ...
分类:
编程语言 时间:
2018-09-20 21:14:15
阅读次数:
219
进入系统 使用 grep -n 'java.lang.Thread.State:BLOCKED' jstack.log -A5; 查询: ...
分类:
编程语言 时间:
2018-09-18 19:00:23
阅读次数:
230
1.概述Jcmd是一个诊断Jvm的命令集工具, 集成了包括Jps, Jstack以及采集JFR信息等功能. 它必须运行在被诊断Jvm进程的同一台机器上.1)查询JVM进程及PID/dapeng-container/bin # jcmd -l252 sun.tools.jcmd.JCmd -l13 c ...
分类:
其他好文 时间:
2018-09-09 20:03:12
阅读次数:
477
写的时候最好要设置线程名称 Thread.name,并设置线程组 ThreadGroup,目的是方便管理。在出现问题的时候,打印线程栈 (jstack -pid) 一眼就可以看出是哪个线程出的问题,这个线程是干什么的。 方法一 Thread方式通过线程组,线程名,并设置UncaughtExcepti ...
分类:
编程语言 时间:
2018-09-04 11:43:01
阅读次数:
210
Tomcat简介Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。Tomcat和Nginx、Apach
分类:
Web程序 时间:
2018-09-01 23:49:44
阅读次数:
408
top ps jps jstack jmap java服务器问题排查 JVM命令 ...
分类:
编程语言 时间:
2018-08-30 16:55:38
阅读次数:
249
我在上一篇博客中简单介绍了JCMD的几个常见的用法,可以进行线程dump,内存转存,内存对象直方图分析等。可以说,JCMD集成了以前我们常用的jstack,jps,jmap等命令,就像瑞士军刀一样,all in one。除了这些功能,JCMD还能够采集JFR信息进行性能分析。 JFR: Java F ...
分类:
其他好文 时间:
2018-08-23 19:17:33
阅读次数:
1198
有一段时间不用crontab定时执行任务了,这次趁着项目实施的机会来进一步分析一下crontab定时任务设置时遇到的一些棘手的问题。 crontab -l 查看目前已经设置的crontab信息 crontab -e 编辑定时任务 举例说明 */1 * * * * jstack 进程号 >> jsta ...
分类:
系统相关 时间:
2018-08-17 14:57:45
阅读次数:
173
模拟死锁 下面是使用jstack命令查看的死锁状态,红色框内是死锁发生的类文件及行号。 ...
分类:
编程语言 时间:
2018-08-12 17:24:51
阅读次数:
195
Java程序CPU使用率过高 通过top命令找到使用率过高的java进程PID 根据进程号查找线程TID: 将TID转换成16进制: 通过jstack命令查看进程栈信息: 注:jstack命令包含在oracle jdk中 openjdk不包含此命令 ...
分类:
编程语言 时间:
2018-08-09 15:40:56
阅读次数:
145