根据CPU消耗定位问题代码

[size=large][b]查看进程id,线程id;下面这条命令可以得出哪个线程对应哪个进程[/b]
ps -eo pid,lwp -L
e:显示所有的进程
o:自定义显示
f:全格式
h:不显示标题
l:长格式
w:宽输出
a:显示终端上的所有进程,包括其他用户的进程
u:有效用户
r:只显示正在运行的进程
x:显示没有控制终端的进程

pid:进程id
lwp:线程id
ruser:用户id
ppid:父进程id
psr:运行该线程的CPU的序号
args:命令行参数

L:显示进程,并尽量显示LWP和NLWP(线程个数)

[b]查看线程占用CPU情况[/b]
top
d:后接整个界面更新的描述,默认5秒
p:指定某个PID来进行查看检测
top执行过程中可以使用的按键
?:显示在top当中可以输入的按键
H:查看每个线程占用CPU的情况
M:内存占用排序
P:cpu占用排序
N:以PID来排序
k:给某个PID一个信号
1:显示每个CPU的详细情况


[b]查看java进程[/b]
jps -lm
jps [options] [hostid]
options可以用
-q :安静模式
-m :输出传递给main方法的参数
-l :显示完整路径
-v :显示传递给JVM的命令行参数
-V :显示通过flag文件传递给JVM的参数
-J :和其他Java工具类似用于传递参数给命令本身要调用的java进程
hostid是主机id,默认localhost。

[b]查看当前虚拟机的线程栈[/b]
jstack -l vmid
-F 强制输出线程堆栈
-l 显示关于锁的附加信息
-m 显示本地方法堆栈
也可以这样:
jstack 进程号|grep -A 50 16进制的线程号(如:58df)
-A 50表示查找到所在行的后50行
[/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值