pstack命令可显示每个进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的 PID。

命令软件包下载地址:https://packages.debian.org/sid/pstack

实例

pstree以树结构显示进程pstree -p work | grep ad

sshd(22669)---bash(22670)---ad_preprocess(4551)-+-{ad_preprocess}(4552)

|-{ad_preprocess}(4553)

|-{ad_preprocess}(4554)

|-{ad_preprocess}(4555)

|-{ad_preprocess}(4556)

`-{ad_preprocess}(4557)

work为工作用户,-p为显示进程识别码,ad_preprocess共启动了6个子线程,加上主线程共7个线程。ps -Lf 4551

UID PID PPID LWP C NLWP STIME TTY STAT TIME CMD

work 4551 22670 4551 2 7 16:30 pts/2 Sl+ 0:02 ./ad_preprocess

work 4551 22670 4552 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

work 4551 22670 4553 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

work 4551 22670 4554 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

work 4551 22670 4555 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

work 4551 22670 4556 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

work 4551 22670 4557 0 7 16:30 pts/2 Sl+ 0:00 ./ad_preprocess

进程共启动了7个线程

pstack显示每个进程的栈跟踪:pstack 4551

Thread 7 (Thread 1084229984 (LWP 4552)):

#0 0x000000302afc63dc in epoll_wait () from /lib64/tls/libc.so.6

#1 0x00000000006f0730 in ub::EPollEx::poll ()

#2 0x00000000006f172a in ub::NetReactor::callback ()

#3 0x00000000006fbbbb in ub::UBTask::CALLBACK ()

#4 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#5 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#6 0x0000000000000000 in ?? ()

Thread 6 (Thread 1094719840 (LWP 4553)):

#0 0x000000302afc63dc in epoll_wait () from /lib64/tls/libc.so.6

#1 0x00000000006f0730 in ub::EPollEx::poll ()

#2 0x00000000006f172a in ub::NetReactor::callback ()

#3 0x00000000006fbbbb in ub::UBTask::CALLBACK ()

#4 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#5 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#6 0x0000000000000000 in ?? ()

Thread 5 (Thread 1105209696 (LWP 4554)):

#0 0x000000302b80baa5 in __nanosleep_nocancel ()

#1 0x000000000079e758 in comcm::ms_sleep ()

#2 0x00000000006c8581 in ub::UbClientManager::healthyCheck ()

#3 0x00000000006c8471 in ub::UbClientManager::start_healthy_check ()

#4 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#5 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#6 0x0000000000000000 in ?? ()

Thread 4 (Thread 1115699552 (LWP 4555)):

#0 0x000000302b80baa5 in __nanosleep_nocancel ()

#1 0x0000000000482b0e in armor::armor_check_thread ()

#2 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#3 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#4 0x0000000000000000 in ?? ()

Thread 3 (Thread 1126189408 (LWP 4556)):

#0 0x000000302af8f1a5 in __nanosleep_nocancel () from /lib64/tls/libc.so.6

#1 0x000000302af8f010 in sleep () from /lib64/tls/libc.so.6

#2 0x000000000044c972 in Business_config_manager::run ()

#3 0x0000000000457b83 in Thread::run_thread ()

#4 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#5 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#6 0x0000000000000000 in ?? ()

Thread 2 (Thread 1136679264 (LWP 4557)):

#0 0x000000302af8f1a5 in __nanosleep_nocancel () from /lib64/tls/libc.so.6

#1 0x000000302af8f010 in sleep () from /lib64/tls/libc.so.6

#2 0x00000000004524bb in Process_thread::sleep_period ()

#3 0x0000000000452641 in Process_thread::run ()

#4 0x0000000000457b83 in Thread::run_thread ()

#5 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0

#6 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6

#7 0x0000000000000000 in ?? ()

Thread 1 (Thread 182894129792 (LWP 4551)):

#0 0x000000302af8f1a5 in __nanosleep_nocancel () from /lib64/tls/libc.so.6

#1 0x000000302af8f010 in sleep () from /lib64/tls/libc.so.6

#2 0x0000000000420d79 in Ad_preprocess::run ()

#3 0x0000000000450ad0 in main ()

pstack 安装linux_pstack命令相关推荐

  1. pstack 安装linux_pstack命令_Linux pstack 命令用法详解:显示每个进程的栈跟踪

    pstack命令可显示每个进程的栈跟踪.pstack 命令必须由相应进程的属主或 root 运行.可以使用 pstack 来确定进程挂起的位置.此命令允许使用的唯一选项是要检查的进程的 PID. 命令 ...

  2. 编程模板-R语言脚本写作:最简单的统计与绘图,包安装、命令行参数解析、文件读取、表格和矢量图输出

    写在前面 个人认为:是否能熟悉使用Shell(项目流程搭建)+R(数据统计与可视化)+Perl/Python等(胶水语言,数据格式转换,软件间衔接)三门语言是一位合格生物信息工程师的标准. 之前分享过 ...

  3. anconda安装后命令行中安装tensorflow报错

    现象  anconda安装后命令行中安装tensorflow报错 pip install --upgrade --ignore-installed tensorflow-gpu Building wh ...

  4. Linux 安装iostat命令

    首先跟你的Linux系统有关 我用的是Red hat系统 记录下最快的安装iostat命令的方式 起初想查看iostat, 提示 iostat: command not found 于是,通过yum ...

  5. 配置LANMP环境(2)-- 安装ifconfig命令与安装SecureCRT

    一.安装ifconfig命令 yum whatprovides ifconfig yum install net-tools 安装这个命令就是为了查看虚拟机的ip地址,SecureCRT连接必须要ip ...

  6. centos安装 ping 命令 ( yum provides )

    yum install -y iputils Docker的CentOS镜像由于做了精简,去掉了 ping 命令,那我们该如何安装这个命令呢 首先可以用 yum provides 命令来搜索哪个软件包 ...

  7. 20165301 预备作业三:Linux安装及命令入门

    预备作业三:Linux安装及命令入门 VirtualBox虚拟机的安装 在进行安装之前,原本以为有了娄老师的安装教程会是一件很容易的事情.万万没想到,在自己实际动手操作中,还是遇到了许多困难.通过与同 ...

  8. Nginx-03:Nginx安装、命令、配置文件

    Nginx安装.命令.配置文件 1.Nginx安装可参考 https://www.runoob.com/linux/nginx-install-setup.html 2.Nginx常用命令 使用ngi ...

  9. Server Core十大安装设置命令

    Server Core作为Windows Server 2008的一个安装选择,被设计用于为核心网络架构提供基础服务,所有不必要的Windows组件都被剔除,它也被视为Windows Server 2 ...

最新文章

  1. BZOJ2588 Count on a tree DFS序+LCA+值域主席树
  2. 怎么用python处理excel文件-用Python读写Excel文件的方式比较
  3. matlab填充点面,求大神指点绘制空间内散点图的包络面,,,散点程序如下
  4. 第一个正式的python版本_LeetCode | 0278. First Bad Version第一个错误的版本【Python】...
  5. 基于 socket.io 实现实时你画我猜游戏
  6. InnoDB配置文件复习
  7. linux 多线程超时中断,c#中的线程超时
  8. 序列最小最优化算法(SMO) SVM凸优化求
  9. Python中 sys.argv[]
  10. gyp安装,及breakpad上的使用方法
  11. Qt基础-QTreeView简单demo、视图模型、坐标位置对应关系介绍等
  12. dosbox使用教程创建masm5
  13. 拍好的视频如何添加配乐
  14. 2021年全球手机市场最大赢家除了苹果,还有OPPO系
  15. unity Inspector
  16. Ubuntu18.04.5-server网络配置介绍
  17. html5设计制作作品,16个精美的 HTML5 作品集网站设计案例
  18. 蓝队应急响应之Linux篇
  19. ABAP:增强篇-CJ20N屏幕增强
  20. 洛谷 P1423 小玉在游泳 C语言

热门文章

  1. 3DsMax 创建阴影贴图的技术指南
  2. js实现网页跳转脚本
  3. python课堂笔记之django-day02(7)
  4. mybatis11--多对多关联查询
  5. 扎根本地连接未来 千米网的电商“红海”生存术
  6. Power Pivot表属性无法切换回表预览模式的问题
  7. SQL Server Denali:SSDT新功能解读
  8. 巧用负载均衡 解决数据中心三大困惑
  9. c语言怎么产生随机字母,菜鸟求助,写一个随机输出26个英文字母的程序
  10. linux命令-eq是什么意思,linux查看系统信息命令