zoukankan      html  css  js  c++  java
  • How to count the number of threads in a process on Linux

    If you want to see the number of threads per process in Linux environments, there are several ways to do it.

    Method One: /proc

    The proc pseudo filesystem, which resides in /proc directory, is the easiest way to see the thread count of any active process. The /proc directory exports in the form of readable text files a wealth of information related to existing processes and system hardware such as CPU, interrupts, memory, disk, etc.

    $ cat /proc/<pid>/status

    The above command will show detailed information about the process with <pid>, which includes process state (e.g., sleeping, running), parent PID, UID, GID, the number of file descriptors used, and the number of context switches. The output also indicates the total number of threads created in a process as follows.

    Threads: <N>
    

    For example, to check the thread count of a process with PID 20571:

    $ cat /proc/20571/status

    The output indicates that the process has 28 threads in it.

    Alternatively, you could simply count the number of directories found in /proc/<pid>/task, as shown below

    $ ls /proc/<pid>/task | wc

    This is because, for every thread created within a process, there is a corresponding directory created in /proc/<pid>/task, named with its thread ID. Thus the total number of directories in /proc/<pid>/task represents the number of threads in the process.

    Method Two: ps

    If you are an avid user of the versatile ps command, this command can also show you individual threads of a process (with "H" option). The following command will print the thread count of a process. The "h" option is needed to hide the header in the top output.

    $ ps hH p <pid> | wc -l

    If you want to monitor the hardware resources (CPU & memory) consumed by different threads of a process, refer to this tutorial.

  • 相关阅读:
    Vue优化首页加载速度 CDN引入
    vue中前进刷新、后退缓存用户浏览数据和浏览位置的实践
    node.js
    keep-alive前进没有刷新
    移动端ios和安卓input问题
    前端技术原理
    Vue给子组件传值为空
    使用vue开发输入型组件更好的一种解决方式(子组件向父组件传值,基于2.2.0)
    Vue路由参数设置可有可无
    Vue组件的三种调用方式
  • 原文地址:https://www.cnblogs.com/zhaoxinshanwei/p/6560307.html
Copyright © 2011-2022 走看看