linux中監視某個程序的執行緒

2021-08-19 22:51:46 字數 1697 閱讀 6642

在linux下進行業務開發的時候,尤其是在應用第三方包的時候,首先要分析程序中的執行緒數目,檢視程序的執行緒數對於開發或者是運維都是乙個必備的技能。

程序的id  也就是 pid,由於linux中線程和程序都有各自的程序描述符,本質上程序和執行緒都是 clone()產生的,對於執行緒來說只要不檢視執行緒所在程序的組號(tid),我們都把執行緒的id 也叫做pid。

ps -aux |grep test  :檢視test程序的pid

ps -t -p 58065 :檢視程序號58065 的所有執行緒的情況,只不過乙個事靜態的,另乙個是動態的罷了。

top -t -p 58065

另乙個神器是 htop:互動式的介面

cat /proc/58065/status 這種方法也是可以的

接下來看htop介面

然後介紹中間部分:從左到右依次介紹各項代表的含義。

pid 表示程序的標識號。

user 表示執行此程序的使用者。

pri 表示程序的優先順序。

ni 表示程序的優先級別值,預設的為0,可以進行調整。

virt 表示程序占用的虛擬記憶體值。

res 表示程序占用的物理記憶體值。

shr 表示程序占用的共享記憶體值。

s 表示程序的執行狀況,r表示正在執行、s表示休眠,等待喚醒、z表示僵死狀態。

%cpu 表示該程序占用的cpu使用率。

%mem 表示該程序占用的物理記憶體和總記憶體的百分比。

time+ 表示該程序啟動後占用的總的cpu時間。

command 表示程序啟動的啟動命令名稱。

下面詳細介紹下幫助文件,介紹各個引數代表的含義。

f1 或者h 檢視幫助文件。

f2 或者s 設定htop

/ 或者f3 搜尋程序。

\ 或者f4 增量程序過濾器。

t 或者f5 顯示樹形結構。

f6 +,- 按照某個指標進行排序。

] 或者f7 可提高nice值可以提高對應程序的優先順序

[ 或者f8 可減少nice值可以提高對應程序的優先順序

k 或者 f9 殺掉程序。

q 或者f10 結束htop。

u 只顯示乙個給定的使用者的程序。

h 顯示或隱藏使用者執行緒。

k 顯示或隱藏核心執行緒。

f 跟蹤程序。

p 按cpu 使用排序。

m 按記憶體使用排序。

t 按time+ 使用排序。。。。。

Linux檢視某個程序的執行緒

問題 我的程式在其內部建立並執行了多個執行緒,我怎樣才能在該程式建立執行緒後監控其中單個執行緒?我想要看到帶有它們名稱的單個執行緒詳細情況 如,cpu 記憶體使用率 執行緒是現代作業系統上進行並行執行的乙個流行的程式設計方面的抽象概念。當乙個程式內有多個執行緒被叉分出用以執行多個流時,這些執行緒就會...

LINUX監視程序退出

arm linux開發 warewin 2g 3g無線傳輸 dtu 和路由器 筆記 監視別的程序的程序,改自busybox的 procps pidof。1 為解決 兩個程序退出導致 web伺服器不能訪問 pppd 不撥號上線,開啟 conpid 程序定期來檢測這兩個程序是否執行。2 該程序編譯到 b...

檢視Linux下某個程序裡面執行緒數量

檢視linux下某個程序裡面執行緒數量 2011 04 08 15 41 3中方法 1.cat proc status 2.pstree p 3.top p 再按h 或者直接輸入 top bh d 3 p 檢視程序工作 strace p 開啟iptables日誌 iptables t raw i p...