linux查看进程下的线程_linux查看线程状态

linux查看进程下的线程_linux查看线程状态鉴于linux下线程的广泛使用我们怎么查看某个进程拥有的线程id了现在很多服务的设计主进程->子进程->线程(比如mysql,varnish)主进程负责侦听网络上的连接并把连接发

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

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

鉴于linux下线程的广泛使用 我们怎么查看某个进程拥有的线程id了

现在很多服务的设计 主进程->子进程->线程(比如mysql,varnish)

主进程负责侦听网络上的连接 并把连接发送给子进程 子进程派生线程去处理这些线程

 

mysql(父进程460,子进程863)

  1   460   425   333 ?           -1 S        0   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/storage/mysql/backup --pid-file=/storag
  460   863   425   333 ?           -1 Sl     500  21:34  \_ /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/storage/mysql/backup

 

1、ps 

  -T Show threads, possibly with SPID column

[root@pdd1 ~]# ps -T -p 863
  PID  SPID TTY          TIME CMD
  863   863 ?        00:00:00 mysqld
  863   865 ?        00:00:51 mysqld
  863   866 ?        00:01:14 mysqld
  863   867 ?        00:00:58 mysqld
  863   868 ?        00:00:50 mysqld
  863   869 ?        00:00:49 mysqld
  863   870 ?        00:00:52 mysqld
  863   871 ?        00:00:50 mysqld
  863   872 ?        00:00:49 mysqld
  863   873 ?        00:00:51 mysqld
  863   874 ?        00:00:48 mysqld
  863   876 ?        00:04:22 mysqld
  863   877 ?        00:07:54 mysqld
  863   878 ?        00:00:19 mysqld
  863   879 ?        00:00:00 mysqld
  863   882 ?        00:00:00 mysqld
  863   887 ?        00:00:00 mysqld
  863  2408 ?        00:00:00 mysqld
  863  2428 ?        00:00:00 mysqld

我们可以看到子进程863派生出的线程  第一行spid 863是主线程(我们知道主线程就是该进程本身)

 

2、top

-H : Threads toggle
Starts top with the last remembered ’H’ state reversed. When this toggle is On, all individual threads will be dis-
played. Otherwise, top displays a summation of all threads in a process.

 

top -H -p 863

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                               
  872 mysql     20   0  741m  56m 4972 S  0.3  5.7   0:49.11 mysqld                                                                                 
  876 mysql     20   0  741m  56m 4972 S  0.3  5.7   4:22.76 mysqld                                                                                 
  863 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.06 mysqld                                                                                 
  865 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:51.65 mysqld                                                                                 
  866 mysql     20   0  741m  56m 4972 S  0.0  5.7   1:14.77 mysqld                                                                                 
  867 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:58.15 mysqld                                                                                 
  868 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:50.26 mysqld                                                                                 
  869 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:49.88 mysqld                                                                                 
  870 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:52.48 mysqld                                                                                 
  871 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:50.83 mysqld                                                                                 
  873 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:51.90 mysqld                                                                                 
  874 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:48.10 mysqld                                                                                 
  877 mysql     20   0  741m  56m 4972 S  0.0  5.7   7:55.01 mysqld                                                                                 
  878 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:19.84 mysqld                                                                                 
  879 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.00 mysqld                                                                                 
  882 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.00 mysqld                                                                                 
  887 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.58 mysqld                                                                                 
 2408 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.00 mysqld                                                                                 
 2428 mysql     20   0  741m  56m 4972 S  0.0  5.7   0:00.06 mysqld

 

3、pstree

[root@pdd1 ~]# pstree -Aup -h 460
mysqld_safe(460)---mysqld(863,mysql)-+-{mysqld}(865)
                                     |-{mysqld}(866)
                                     |-{mysqld}(867)
                                     |-{mysqld}(868)
                                     |-{mysqld}(869)
                                     |-{mysqld}(870)
                                     |-{mysqld}(871)
                                     |-{mysqld}(872)
                                     |-{mysqld}(873)
                                     |-{mysqld}(874)
                                     |-{mysqld}(876)
                                     |-{mysqld}(877)
                                     |-{mysqld}(878)
                                     |-{mysqld}(879)
                                     |-{mysqld}(882)
                                     |-{mysqld}(887)
                                     |-{mysqld}(2408)
                                     `-{mysqld}(2428)

 

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

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

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


相关推荐

  • python取整方法

    python取整方法原文地址 https www cnblogs com Devilf p 8043033 htmlpython 中取整数的几种方法 1 向下取整 nbsp int gt gt gt a 14 38 gt gt gt int a 142 向上取整 ceil 使用 ceil 方法时需要导入 math 模块 例如 gt gt gt importmath amp

    2025年6月18日
    6
  • StrictMode使用

    StrictMode使用【IT168技术】最新的Android平台中(Android2.3起),新增加了一个新的类,叫StrictMode(android.os.StrictMode)。这个类可以用来帮助开发者改进他们编写的应用,并且提供了各种的策略,这些策略能随时检查和报告开发者开发应用中存在的问题,比如可以监视那些本不应该在主线程中完成的工作或者其他的一些不规范和不好的代码。  StrictMode有多种不

    2022年6月10日
    52
  • 【linux命令】 tree命令

    【linux命令】 tree命令文章目录Tree命令安装方法一,yum安装方法二,源码安装Tree命令安装方法一,yum安装命令:yuminstalltree方法二,源码安装1.下载安装包,地址:http://mama.indstate.edu/users/ice/tree/2.解压安装1)Linux环境(CentOS6.5)下安装a.解压tree-1.7.0.tgz文件,命令:tar-zxvftree-1.7.0.tgzb.进入解压目录中,命令:cdtree-1.7.0      c.安装文件,命令:

    2022年7月24日
    10
  • Kong 源码分析

    Kong 源码分析本文最初于2020年9月在公司内部发表,现整理并增加部分批注公开发布。最开始加入公司Infrastructure团队时,迷茫的我接到的的一个任务就是学习Lua和OpenResty,当时收到了两本书籍的PDF文件,要求尽快理解学习,能够掌握Kong,并且具有研发能力。当时我还没有怎么接触开源社区,能力只停留在GitClone,大概花了2周时间,我学习Lua基本语法后,开始阅读Kong项目的源码,并找到几个切入点梳理了源码分析文档,也应该正是这个成果让组长认同了我,这

    2022年6月26日
    23
  • CAS算法的理解及应用「建议收藏」

    CAS算法的理解及应用「建议收藏」应用原子操作类,例如AtomicInteger,AtomicBoolean …适用于并发量较小,多cpu情况下;Java中有许多线程安全类,比如线程安全的集合类。从Java5开始,在java.util.concurrent包下提供了大量支持高效并发访问的集合接口和实现类。如:ConcurrentMap、ConcurrentLinkedQueue等线程安全集合。引入问题那么问题来了,这些线程安全类的底层是怎么保证线程安全的,你可能会想到是不是使用同步代码锁synchronized?引入概念这些线

    2022年8月9日
    10

发表回复

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

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