pstack 安装linux_pstack命令[通俗易懂]

pstack 安装linux_pstack命令[通俗易懂]pstack命令可显示每个进程的栈跟踪。pstack命令必须由相应进程的属主或root运行。可以使用pstack来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的PID。命令软件包下载地址:https://packages.debian.org/sid/pstack实例pstree以树结构显示进程pstree-pwork|grepadsshd(22669)—b…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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命令[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193788.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea 2021.2 Mac版激活码破解方法

    idea 2021.2 Mac版激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
  • 手把手教你训练自己的Mask R-CNN图像实例分割模型(PyTorch官方教程)

    手把手教你训练自己的Mask R-CNN图像实例分割模型(PyTorch官方教程)近来在学习图像分割的相关算法,准备试试看MaskR-CNN的效果。关于MaskR-CNN的详细理论说明,可以参见原作论文https://arxiv.org/abs/1703.06870,网上也有大量解读的文章。本篇博客主要是参考了PyTorch官方给出的训练教程,将如何在自己的数据集上训练MaskR-CNN模型的过程记录下来,希望能为感兴趣的读者提供一些帮助。PyTorch官方教程(…

    2022年8月23日
  • linuxtop命令详解(xargs命令详解)

    查看多核CPU命令 mpstat-PALL 和 sar-PALL  说明:sar-PALL>aaa.txt  重定向输出内容到文件aaa.txt top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。本文通过一个运行中的WEB服务器的top监控截图,讲

    2022年4月16日
  • mysql分区表_MySQL分区分表[通俗易懂]

    mysql分区表_MySQL分区分表[通俗易懂]1、为什么要分表?数据库数据越来越大,随之而来的是单个表中数据太多。以至于查询速度变慢,而且由于表的锁机制导致应用操作也搜到严重影响,出现了数据库性能瓶颈。mysql中有一种机制是表锁定和行锁定,是为了保证数据的完整性。表锁定表示你们都不能对这张表进行操作,必须等我对表操作完才行。行锁定也一样,别的sql必须等我对这条数据操作完了,才能对这条数据进行操作。当出现这种情况时,我们可以考虑分表或分区。…

    2022年4月29日
  • windows类书的学习心得

    windows类书的学习心得这篇文章应该是凑的,不够很长,还是值得读的,转发来。下满是原网址:http://www.blogjava.net/sound/archive/2008/08/21/40499.html创建人:paul现在的计算机图书发展的可真快,很久没去书店,昨日去了一下,真是感叹万千,很多陌生的出版社,很多陌生的作者,很多陌生的译者,书名也是越来越夸张,什

    2022年4月16日
  • Java面向对象的三大特征以及理解

    Java面向对象的三大特征以及理解Java面向对象的三大特征为:封装、继承和多态,本文说说我对三大特性的理解。1.封装Java中的封装是指一个类把自己内部的实现细节进行隐藏,只暴露对外的接口(setter和getter方法)。封装又分为属性的封装和方法的封装。把属性定义为私有的,它们通过setter和getter方法来对属性的值进行设定和获取。下面我举一个简单的封装例子publicclassPerson{priva…

    2022年7月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号