`

linux下查看线程数的几种方法

阅读更多

1、 cat /proc/${pid}/status

2、pstree -p ${pid}

3、top -p ${pid} 再按H   或者直接输入 top -bH -d 3 -p  ${pid}

top -H
手册中说:-H : Threads toggle
加上这个选项启动top,top一行显示一个线程。否则,它一行显示一个进程。

4、ps xH
手册中说:H Show threads as if they were processes
这样可以查看所有存在的线程。

5、ps -mp <PID>
手册中说:m Show threads after processes
这样可以查看一个进程起的线程数。

 

1、总结系统限制有:
    /proc/sys/kernel/pid_max #查系统支持的最大线程数,一般会很大,相当于理论值
    /proc/sys/kernel/thread-max
    max_user_process(ulimit -u) #系统限制某用户下最多可以运行多少进程或线程
    /proc/sys/vm/max_map_count
    硬件内存大小


2、Java虚拟机本身限制:
    -Xms  #intial java heap size
    -Xmx  #maximum java heap size
    -Xss  #the stack size for each thread


3、查询当前某程序的线程或进程数
pstree -p `ps -e | grep java | awk '{print $1}'` | wc -l

pstree -p 3660 | wc -l


4、查询当前整个系统已用的线程或进程数
pstree -p | wc -l

分享到:
评论

相关推荐

    Linux下基于多线程的服务器程序设计.pdf

    为了解决这些问题,文章介绍了一种基于Linux下的多线程服务器程序设计方法。 多线程服务器程序设计的优点是可以解决传统服务器工作方式的三个缺点。首先,创建线程比创建进程快10~100倍,能快速地响应客户请求。...

    linux下C语言多线程编程实例

    在Linux环境下进行C语言多线程编程,可以利用POSIX线程库,也称为pthread库。这个库提供了创建、同步和管理线程的一系列接口,使得开发者能够在单个进程中同时执行多个任务,从而提高程序的并行性。下面将详细探讨多...

    Linux多线程编程,替代sleep的几种方式

    目前我知道有三种方式:  1、usleep  这个是轻量级的,听说能可一实现线程休眠,我个人并不喜欢这种方式,所以我没有验证它的可行信(个人不推荐)。  2、select  这个可以,我也用过这种方式,它是在...

    嵌入式Linux应用程序开发第9章多线程编程

    在 Linux2.4 内核中,消除了这个线程个数的限制,并且允许在系统运行中动态地调整进程数上限。当时采用的是 LinuxThread 线程库,它对应的线程模型是“一对一”线程模型,也就是一个用户级线程对应一个内核线程,而...

    linux下多线程读取和显示文件

    本示例涉及的知识点主要集中在如何在Linux环境下利用C语言创建并管理线程,以及如何使用信号量来实现线程间的同步,确保数据安全地被读取和显示。我们将深入探讨以下几个方面: 1. **线程创建与管理**: 在Linux中...

    linux_multi_thread.rar_linux 多线程_linux下多线程

    在Linux操作系统中,多线程编程是一种常见的编程技术,它允许多个执行流同时在单个进程中运行。本文将深入探讨Linux下多线程的概念、实现以及相关知识点。 首先,我们要理解什么是线程。线程是操作系统调度的基本...

    linux 多线程编程

    Linux 系统下的多线程遵循 POSIX 线程接口,称为 pthread。编写 Linux 下的多线程程序,需要使用头文件 pthread.h,连接时需要使用库 libpthread.a。Linux 下 pthread 的实现是通过系统调用 clone()来实现的。clone...

    Linux下C语言编程--线程操作

    在Linux下创建和管理线程主要依赖于`pthread`库中的几个关键函数: 1. **`pthread_create`**: 创建一个新的线程。 - 函数原型:`int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*...

    linux下多线程读写socket的简单例子

    2. **信号量**:在某些情况下,可以使用信号量(semaphore)来控制资源的访问数量,如限制并发连接的线程数。 3. **非阻塞I/O**:设置Socket为非阻塞模式可以避免线程在等待数据时被阻塞,提高程序效率。但这也需要...

    linux多线程程序实验,用不同线程完成一个矩阵乘法,以及子进程计算斐波那契数列,父进程输出结果

    在Linux操作系统中,多线程编程是一种常见的技术,它允许程序在同一时间执行多个并发任务,以提高系统的效率和响应性。本实验通过创建多个线程,分别用于执行矩阵乘法和计算斐波那契数列,展示了多线程在并发处理...

    实验二、嵌入式Linux多线程编程实验

    实验二的目的是让学生深入理解嵌入式Linux环境下的多线程编程,这涉及到对线程概念、创建和管理的理解,以及如何在编程中引入线程库。线程是操作系统资源调度的基本单位,允许在一个进程中并发执行多个执行路径,...

    由浅入深Linux下pthread线程库介绍[归类].pdf

    Linux下pthread线程库介绍 本文将详细介绍Linux下pthread线程库的基本概念、线程创建、线程结束、线程属性修改等方面的知识点。 线程的优点 多线程程序作为一种多任务、并发的工作方式,有以下的优点: 1. 提高...

    Linux内核线程编程方法

    Linux内核线程编程涉及到操作系统的核心机制,是Linux系统中用于执行特定内核任务的一种机制。内核线程与用户进程的主要区别在于它们不拥有独立的地址空间,它们的活动范围仅限于内核空间,不会进行用户态到内核态的...

    Linux多线程编程.doc

    在Linux系统中,多线程编程是一种有效提升程序并发性和执行效率的方法。本文将深入探讨Linux环境下如何进行多线程编程,以及相关的基础知识和技术要点。 首先,Linux中的线程被称为轻量级进程(Lightweight Process...

    linux线程实现定时器源码

    以上就是关于“Linux线程实现定时器源码”的核心内容,实际代码会根据所选的定时器实现方法有所不同,但都会围绕线程的创建、定时器的配置和线程间同步进行展开。通过阅读和分析`main.c`和`makefile`,我们可以深入...

    Linux超线程感知的调度算法研究

    Linux超线程感知的调度算法研究是针对Intel的Hyper-Threading Technology进行的一种优化技术,旨在提升处理器在Linux操作系统下的性能。超线程技术是Intel在2002年推出的一种微处理器架构,它通过共享处理器资源,...

    《嵌入式Linux应用程序开发详解》之多线程编程

    Linux2.4 内核消除了这个线程个数的限制,并且允许在系统运行中动态地调整进程数上限。 Linux2.6 内核中,进程调度通过重新编写,删除了以前版本中效率不高的算法。内核线程框架也被重新编写,开始使用 NPTL...

    linux下 多线程模拟进程调度多线程模拟进程调度

    `linux下C语言多线程编程实例.doc`文档可能包含具体的代码示例,展示了如何在C语言环境下使用POSIX线程库实现这些概念。而`多线程模拟进程调度.rar`可能是一个包含更多详细资料的压缩包,包括代码、实验指导和可能的...

Global site tag (gtag.js) - Google Analytics