pstatck命令可现实每个进程的栈跟踪。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}(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命令学习相关推荐

  1. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅 https://www.webfalse.com/read/20 ...

  2. linux命令学习(转)

    查询命令的地方:man.linuxde.net/ Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作.文件存 Linux提供了大量的命令,利用它可以有 ...

  3. mondb 常用命令学习记录

    mondb 常用命令学习记录 一.MongoDB 下载安装 MongoDB官网 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制 ...

  4. 硬盘mdr转换成gdp linux,Linux 命令学习神器!命令看不懂直接给你解释!

    原标题:Linux 命令学习神器!命令看不懂直接给你解释! 转自: 良许Linux 大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件 ...

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

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

  6. 【Linux】一步一步学Linux——pstack命令(261)

    00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 pstack命令可显示每个进程的栈跟踪.pstack 命令 ...

  7. linux命令-- pstack命令(跟踪进程栈)

    pstack是一个shell脚本,用于打印正在运行的进程的栈跟踪信息,它实际上是gstack的一个链接,而gstack本身是基于gdb封装的shell脚本..此命令可显示每个进程的栈跟踪.pstack ...

  8. Java命令学习系列

    Java命令学习系列(七)--javap Java命令学习系列(六)--jinfo Java命令学习系列(五)--jhat Java命令学习系列(四)--jstat Java命令学习系列(三)--Jm ...

  9. linux之awk命令学习笔记

    Linux之awk命令学习笔记 前言 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具. 之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinberger, ...

最新文章

  1. 【elementUI】el-tree搜索时加载子节点对应父节点、父节点对应子节点树
  2. 从创业到成功,SaaS巨头Salesforce靠的是这七大秘诀
  3. Visual Studio 2005 快捷键
  4. FFMPEG使用参数详解
  5. 应用环境下的TIME_WAIT和CLOSE_WAIT
  6. 科目三路考流程及注意事项
  7. 代码大全阅读笔记01
  8. jackson 进行json与java对象转换 之二
  9. 树莓派计算机视觉环境搭建
  10. 视频教程-webservice入门到精通(备java基础,xml,javaee框架)-Java
  11. 【积跬步以至千里】唧唧Down下载视频无法正常合并分段文件解决方案
  12. PCB电路板生产完成分析
  13. 网站建设教程:企业怎么自己建网站?
  14. USACO 1.1.3 - Friday the Thirteenth(模拟)
  15. 不懂不要炒股,一定要在调整时买入股票!
  16. 【实习日记】实习第N天 从零开始搭建一个tiktok puppet(一)
  17. latex如何绘制标准三线表 lllegal charactor in array arg 如何合并单元格?
  18. OpenHarmony如何拨打电话
  19. 百度病了,必应挂了,Yandex疯了。
  20. 每天喝6杯清水,就能轻松瘦身!

热门文章

  1. Spring MVC中的拦截器/过滤器HandlerInterceptorAdapter的使用
  2. 容器学习 之 容器的概念(一)
  3. CSS常用选择器、伪元素选择器、伪类选择器大全——响应式Web系列学习笔记
  4. 1058 A+B in Hogwarts (20 分)_7行代码AC
  5. 样例解释:1013 数素数 (20分)
  6. c语言判断一个已知的二叉树是否是二叉排序树_10584 二叉树怎样序列化才能重建...
  7. python笔记之序列(list的基本使用和常用操作)
  8. oracle 查询时间跨度一年,关于时间跨度比较的OVERLAPS函数
  9. python list 查找find_List 泛型 集合中 Find 的用法
  10. docker export_docker构建python3.7镜像