linux运行中进程和线程分析

一.首先查看系统中各进程占用cpu和内存的信息,找出占用资源最多的进程Pid。
    1.用top(获得进程的动态更新)命令查看  默认每5秒刷新一次,按照cpu使用率排行。输入M可以按照内存占用排行。查出占用cpu或内存比较高的进程Pid。
    2.用ps(获得进程的当前快照)命令。查出占用cpu或内存比较高的进程Pid。
二.通过进程id查找该进程下面所有线程的信息,找出占用资源最多的线程的Tid。
    1.用top  top -H -p <pid>动态实时显示该进程下所有的线程的情况,找出占用资源最高的线程Tid。
    2.用ps ps -T -p <pid>显示该进程下所有的线程的当前快照,找出占用资源最高的线程Tid。
三.查看该线程的堆栈信息。
    <1>1.获取线程Tid的十六进制数 (printf "%X\n" Tid)linux中可以用这个命令获取转换成16进制后的数。
        2.jstack Pid >> xxx.log 把进程的所有线程的堆栈信息打印保存到xxx这个文件中。
        3.用sz命令从服务器导出这个文件,然后根据上面转化的16进制的线程Tid在文件中找到该线程的信息。
    <2>1.获取线程Tid的十六进制数 (printf "%X\n" Tid)linux中可以用这个命令获取转换成16进制后的数。
        2.jstack Pid直接在服务器上显示这个进程所有线程的堆栈信息。
        3.jstack Pid |grep 442b -A 30 显示线程id为442b的线程的堆栈信息。442b为要查找的线程id的16进制。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值