Linux查看系统线程数
  • 查看线程数
  • 查看进程内的线程
  • 统计线程数


查看线程数

想要查看Linux操作系统允许的最大线程数,可以通过命令

ulimit -a
  • 1.

Linux查看系统线程数_运维


返回配置项的详细说明:

#  core文件的最大值为100blocks 

core file size          (blocks, -c) 0

#   进程的数据段可以任意大

data seg size           (kbytes, -d) unlimited

# 指定调度优先级

scheduling priority             (-e) 0

# 文件可以任意大

file size               (blocks, -f) unlimited

# 最多有15237个待处理的信号

pending signals                 (-i) 15237

# 一个任务锁住的物理内存的最大值为64KB

max locked memory       (kbytes, -l) 64

# 一个任务的常驻物理内存的最大值

max memory size         (kbytes, -m) unlimited

# 一个任务最多可以同时打开65535个文件

open files                      (-n) 65535

# 管道的最大空间为4096字节

pipe size            (512 bytes, -p) 8

# POSIX的消息队列的最大值为819200字节

POSIX message queues     (bytes, -q) 819200

# 指定实时优先级

real-time priority              (-r) 0

# 进程的栈的最大值为10240字节

stack size              (kbytes, -s) 10240

# 进程使用的CPU时间

cpu time               (seconds, -t) unlimited

# 当前用户同时打开的进程(包括线程)的最大个数为15237

max user processes              (-u) 15237

# 没有限制进程的最大地址空间

virtual memory          (kbytes, -v) unlimited

# 所能锁住的文件的最大个数没有限制

file locks                      (-x) unlimited
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.

查看配置文件中的配置

cat /etc/security/limits.d/90-nproc.conf
  • 1.

Linux查看系统线程数_服务器_02


说明如下

# 所有的用户默认可以打开最大的进程数为 4096

*          soft    nproc     4096

# root 用户默认可以打开最大的进程数 无限制的

root       soft    nproc     unlimited
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

如果需要修改的话,可以直接使用vim命令

vim /etc/security/limits.d/90-nproc.conf
  • 1.

查看进程内的线程

通过命令ps -ef|grep tomcat获取tomcat进程号

ps -ef|grep tomcat
  • 1.

Linux查看系统线程数_服务器_03


查看进程号 15728 下的线程数

ps -T -p 15728
  • 1.

Linux查看系统线程数_tomcat_04


或者使用命令

top -H -p 15728
  • 1.

Linux查看系统线程数_linux_05

统计线程数

通过命令 ps -eLf |wc -l 统计线程数量,unix标准风格组合,其中-e 代表列出所有进程,-l 代表长格式,-f 代表完整的格式
wc命令 -l 统计文本内容输出的行数
通过该命令,可以打印出当前服务器的总线程数量

ps -eLf |wc -l

# 2602
  • 1.
  • 2.
  • 3.

Linux查看系统线程数_tomcat_06

ps -Lf 15728 |wc -l

# 2191
  • 1.
  • 2.
  • 3.

Linux查看系统线程数_运维_07


查询当前已用的线程数或进程数

pstree -p |wc -l
  • 1.

Linux查看系统线程数_linux_08


动态查看某个进程的资源消耗情况

top -p 15728
  • 1.

Linux查看系统线程数_运维_09