博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pstack.sh 查看进程堆栈
阅读量:6706 次
发布时间:2019-06-25

本文共 557 字,大约阅读时间需要 1 分钟。

#!/bin/bash 

if (( $# < 1 )) 
then 
    echo "usage: `basename $0` pid" 1>&2 
    exit 1 
fi

if [[ ! -r /proc/$1 ]] 

then 
    echo "Process $1 not found." 1>&2 
    exit 1 
fi

backtrace="bt" 

if [[ -d /proc/$1/task ]] 
then 
    if [[ `ls /proc/$1/task 2>/dev/null | wc -l` > 1 ]] 
    then 
        backtrace="thread apply all bt" 
    fi  ; 
elif [[ -f /proc/$1/maps ]] 
then 
        if grep -e libpthread /proc/$1/maps > /dev/null 2>&1 
    then 
                backtrace="thread apply all bt" 
        fi 
fi

GDB=gdb

$GDB -quiet -nx /proc/$1/exe -p $1 <<<"$backtrace" | 

    sed -n  \ 
    -e 's/^(gdb) //' \ 
    -e '/^#/p' \ 
    -e '/^Thread/p'

使用方法

pstack.sh pid

转载地址:http://mnflo.baihongyu.com/

你可能感兴趣的文章
centos x64搭建 hadoop2.4.1 HA
查看>>
Android第四天
查看>>
ListView的缓存数据复用导致的显示错乱问题
查看>>
让Rails程序出现异常错误等自动发送错误邮件 - exception_notification
查看>>
java代码操作properties属性文件
查看>>
linux账号群组删除等相关操作
查看>>
Scala avoid null
查看>>
oracle性能优化学习062201
查看>>
Python小练习之使用for循环对列表内元素进行排序
查看>>
Java基础学习总结(8)——super关键字
查看>>
Maven学习总结(七)——eclipse中使用Maven创建Web项目
查看>>
Node.js中实现文件的循环写入
查看>>
大型网站技术架构(七)网站的可扩展性架构
查看>>
处理 ps cs3 打开提示 产品已停止 故障
查看>>
2015年终总结
查看>>
RSync实现文件备份同步
查看>>
linux系统定时任务
查看>>
js数组的操作 和 数组对象的3个属性
查看>>
POJ 1603: Risk
查看>>
我的友情链接
查看>>