命令行分析java线程CPU占用

1.使用top命令找出占用cpu最高的JAVA进程pid号

2. 找出占用cpu最高的线程:

top -Hp
pid  -d 1 -n 1

3. 打印占CPU最高JAVA进程pid的堆栈信息

jstack pid > /tmp/stacktrace.log

4. 把占CPU最高线程号码换算成16进制到stacktrace.log中寻找对应线程16进制值找到线程代码。

时间: 2024-08-29 11:51:41

命令行分析java线程CPU占用的相关文章

ubuntu命令行下java工程编辑与算法(第四版)环境配置

ubuntu命令行下java工程编辑与算法(第四版)环境配置 java 命令行 javac java 在学习算法(第四版)中的实例时,因需要安装配套的java编译环境,可是在编译java文件的时候总是出各种错误,特在此总结一下. ubuntu下java环境配置 由于网上教程比较多,而且也较全面,特此摆放一个链接,跟着此教程总就可以配置好oracle的java jdk,如果想更加省事,直接在命令行下键入java,会提示安装各种开源java jdk,只需要一个命令即可: sudo apt-get i

用命令行编译java并生成可执行的jar包

用命令行编译java并生成可执行的jar包 1.编写源代码. 编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java.程序结构如下: package test; import java.awt.*; import javax.swing.*; //更多包的导入... class NotePadFrame extends JFrame { //主界面的设计... } //其他相关代码... public class CardLayo

使用命令行运行Java程序

我现在身边有好多人在学习java,只要一提到学习java语言,我们马上想到的工具是eclipse,MyEclipse,NetBeans等等. 也许是我们用惯了vc,对集成开发环境有太多的依赖.但是,我个人觉得,对于一个开发人员有必要熟悉各种开发工具,更要尝试最原始的开发工具,即命令行. 同时我还发现用命令行更对java的语法有更深刻的理解,而不是仅仅停留在背诵记忆的层次上. 我们先介绍一下常用的命令: ①cd命令---切换目录:   e.g. cd src ②javac命令---编译java源程

java学习总结(16.05.08)在windows下使用cmd命令行对java文件进行编译和执行

windows下利用cmd命令行可以调用jdk里的javac.exe和java.exe对java文件进行编译和执行,前提是jdk已成功安装并正确配置相关环境变量(jdk安装与环境变量的配置方法:http://blog.csdn.net/qq_32099621/article/details/51339868) 下面来说一下windows下如何使用cmd命令行来编译执行java文件 首先找到需要编译和执行的java文件 这里我要编译和执行这个java文件 按组合键win+r调出"运行",

【转帖】windows命令行中java和javac、javap使用详解(java编译命令)

windows命令行中java和javac.javap使用详解(java编译命令) 更新时间:2014年03月23日 11:53:15   作者:    我要评论 http://www.jb51.net/article/48380.htm 学习一下java 最近重新复习了一下java基础,这里便讲讲对于一个类文件如何编译.运行.反编译的.也让自己加深一下印象 如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行.进入如图所示的画面: 可知,当前默认目录为C盘User

findstr的命令行分析机制

来源:http://www.cn-dos.net/forum/viewthread.php?tid=21167&fpage=1&highlight=findstr willsort 版主 To All: 问题缘起于bsijl一篇关于findstr错误过滤的主题[1],当时因为无法找到原因,所以只能推测 /g 开关存在某些问题. 近日,因为编写一个debuger代码,再次使用了 findstr/g ,结果遇到了同样的问题[2].经过仔细的测试[3]后,发现是 findstr 特殊的命令行分析

关于linux的进程中的各个线程cpu占用情况的分析和查看

我们常常会在新开的服搭建一个游戏的server,有时候要进行压力測试,那么怎样来看呢,一般我们会通过top命令查看各个进程的cpu和内存占用情况,获得到了我们的进程id,然后我们或许会通过pstack命令查看里边的各个线程id以及相应的线程如今正在做什么事情,分析多组数据就能够获得哪些线程里有慢操作影响了server的性能,从而得到解决方式. 比方这种以组数据: [[email protected] bin]# pstack 30222 Thread 9 (Thread 0x7f729adc17

排查linux下java应用cpu占用过高

用于快速排查Java的CPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用.目前只支持Linux.原因是Mac.Windows的ps命令不支持列出进程的线程id,更多信息参见#33,欢迎提供解法. PS,如何操作可以参见@bluedavy的<分布式Java应用>的[5.1.1 CPU消耗分析]一节,说得很详细: top命令找出消耗CPU高的Java进程及其线程id: 开启线程显示模式(top -H,或是打开top

Java进程CPU占用高导致的网页请求超时的故障排查

一.发现问题的系统检查: 一个管理平台门户网页进统计页面提示请求超时,随进服务器操作系统检查load average超过4负载很大,PID为7163的进程占用到了800%多. 二.定位故障 根据这种故障的一般处理思路,先找出问题进程内CPU占用率高的线程,再通过线程栈信息找出该线程当时在运行的问题代码段,操作如下: 2.1.根据思路查看高占用的"进程中"占用高的"线程",追踪发现7163的进程中16298的线程占用较高,使用命令: top -Hbp 7163 | a