Linux系統的進程是由線程組成的,當然Linux進程下的線程數是不固定的,可以是一個進程,也可以是多個進程。本文就來教大家Linux系統如何查看進程的線程數?
一、使用命令查看Linux進程的線程數
1、使用top命令,具體用法是 top -H
加上這個選項,top的每一行就不是顯示一個進程,而是一個線程。
2、使用ps命令,具體用法是 ps -xH
這樣可以查看所有存在的線程,也可以使用grep作進一步的過濾。
3、使用ps命令,具體用法是 ps -mq PID
這樣可以看到指定的進程產生的線程數目。
二、Linux系統工具查看Linux進程
看看這個目錄吧,/proc/5000/ 這裡面有你所有想要的。其實stat代表著當前的一些信息。
使用ps命令來查看進程的時候,進程狀態分別對應的含義如下:
D 不可中斷睡眠 (通常是在IO操作) 收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生
R 正在運行或可運行(在運行隊列排隊中)
S 可中斷睡眠 (休眠中, 受阻, 在等待某個條件的形成或接受到信號)
T 已停止的 進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後停止運行
W 正在換頁(2.6.內核之前有效)
X 死進程 (未開啟)
Z 僵屍進程 進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放BSD風格的
《 高優先級(not nice to other users)
N 低優先級(nice to other users)
L 頁面鎖定在內存(實時和定制的IO)
s 一個信息頭
l 多線程(使用 CLONE_THREAD,像NPTL的pthreads的那樣)
+ 在前台進程組
以上就是Linux查看進程的線程數的方法了,Linux進程的線程數是進程的一個重要參數,也是管理Linux進程應該要知道的信息。