linux下查看进程的线程数,linux查看进程的线程数
top -H -p $PID ?#查看對應進程的那個線程占用CPU過高
1、top -H
手冊中說:-H : Threads toggle
加上這個選項啟動top,top一行顯示一個線程。否則,它一行顯示一個進程。
2、ps xH
手冊中說:H Show threads as if they were processes
這樣可以查看所有存在的線程。
3、ps -mp
手冊中說:m Show threads after processes
這樣可以查看一個進程起的線程數。
查看進程
top 命令
top命令查看系統的資源狀況
load average表示在過去的一段時間內有多少個進程企圖獨占CPU
zombie 進程 :不是異常情況。一個進程從創建到結束在最后那一段時間遍是僵尸。留在內存中等待父進程取的東西便是僵尸。任何程序都有僵尸狀態,它占用一點內存資源,僅僅是表象而已不必害怕。如果程序有問題有機會遇見,解決大批量僵尸簡單有效的辦法是重起。kill是無任何效果的stop模式:與sleep進程應區別,sleep會主動放棄cpu,而stop是被動放棄cpu ,例單步跟蹤,stop(暫停)的進程是無法自己回到運行狀態的。
cpu states:
nice:讓出百分比irq:中斷處理占用
idle:空間占用百分比 iowait:輸入輸出等待(如果它很大說明外存有瓶頸,需要升級硬盤(SCSI))
Mem:內存情況
設計思想:把資源省下來不用便是浪費,如添加內存后free值會不變,buff值會增大。 判斷物理內存夠不夠,看交換分區的使用狀態。
交互命令:
[Space]立即刷新顯示
[h]顯示幫助屏幕
[k] 殺死某進程。你會被提示輸入進程 ID 以及要發送給它的信號。 一般的終止進程可以使用15信號;如果不能正常結束那就使用信號9強制結束該進程。默認值是信號15。在安全模式中此命令被屏蔽。
[n] 改變顯示的進程數量。你會被提示輸入數量。
[u] 按用戶排序。
[M] 按內存用量排序。
[o][O] 改變顯示項目的順序。
[P] 根據CPU使用百分比大小進行排序。
[T] 根據時間/累計時間進行排序。
[Ctrl+L] 擦除并且重寫屏幕。
[q] 退出程序。
[r] 重新安排一個進程的優先級別。系統提示用戶輸入需要改變的進程PID以及需要設置的進程優先級值。輸入一個正值將使優先級降低,反之則可以使該進程擁有更高的優先權。默認值是10。
[S] 切換到累計模式。
[s] 改變兩次刷新之間的延遲時間。系統將提示用戶輸入新的時間,單位為s。如果有小數,就換算成m s。輸入0值則系統將不斷刷新,默認值是5 s。需要注意的是如果設置太小的時間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。
縮寫含義:
PID每個進程的ID
USER進程所有者的用戶名
PRI每個進程的優先級別
NI每個優先級的值
SIZE 進程的代碼大小加上數據大小再加上堆棧空間大小的總數,單位是KB RSS 進程占用的物理內存的總數量,單位是KB
SHARE進程使用共享內存的數量
STAT 進程的狀態。其中S代表休眠狀態;D代表不可中斷的休眠狀態;R代表運行狀態;Z代表僵死狀態;T代表停止或跟蹤狀態
%CPU進程自最近一次刷新以來所占用的CPU時間和總時間的百分比
%MEM進程占用的物理內存占總內存的百分比
TIME進程自啟動以來所占用的總CPU時間
CPU CPU標識
COMMAND進程的命令名稱
ps命令
ps查看當前用戶的活動進程,如果加上參數可以顯示更多的信息,如-a,顯示所有用戶的進程
ps ax :tty值為“?”是守護進程,叫deamon 無終端,大多系統服務是此進程,內核態進程是看不到的
ps axf :看進程樹,以樹形方式現實進程列表敲 ,init是1號進程,系統所有進程都是它派生的,殺不掉
ps axm :會把線程列出來。在linux下進程和線程是統一的,是輕量級進程的兩種方式。
1
2
3
4
ps axu :顯示進程的詳細狀態。
vsz:說此進程一共占用了多大物理內存。
rss:請求常駐內存多少
查看線程
其實linux沒有線程,都是用進程模仿的
ps -ef f
用樹形顯示進程和線程,比如說我想找到proftp現在有多少個進程/線程,可以用
$ ps -ef f | grep proftpd
nobody 23117 1 0 Dec23 ? S 0:00 proftpd: (accepting connections)
jack 23121 23117 0 Dec23 ? S 7:57 _ proftpd: jack - ftpsrv: IDLE
jack 28944 23117 0 Dec23 ? S 4:56 _ proftpd: jack - ftpsrv: IDLE
這樣就可以看到proftpd這個進程下面掛了兩個線程。
在Linux下面好像因為沒有真正的線程,是用進程模擬的,有一個是輔助線程,所以真正程序開的線程應該只有一個。
pstree -c也可以達到相同的效果
$ pstree -c | grep proftpd
|-proftpd-+-proftpd
| `-proftpd
cat /proc/${pid}/status
可以查看大致的情況
pstack
有些系統可以用這個東東,可以查看所有線程的堆棧
如何查看進程中各線程的內存占用情況?
用ps aux只能查看到進程,如果進程里面使用了pthread編程,用什么命令才能查詢到進程里的線程資源占用?
ps aux | grep不就是了
Linux 查看進程的線程數
三種方法: 1. 使用top命令,具體用法是 top -H 加上這個選項,top的每一行就不是顯示一個進程,而是一個線程. 2. 使用ps命令,具體用法是 ps -xH 這樣可以查看所有存在的線程,也 ...
linux查看進程與線程數
1. 查看進程:ps -ef 或 ps -aux 得到進程的pid:如: ps -ef | grep process_name | grep -v "grep" | awk '{p ...
linux查看進程和線程的命令
1.任務:獲得進程信息 :ps命令,或者top命令,它能顯示當前運行中進程的相關信息,包括進程的PID. ps命令能提供一份當前進程的快照.如果想狀態可以自動刷新,可以使用top命令. 2.任務:獲得 ...
Linux查看進程線程個數
1.根據進程號進行查詢: # pstree -p 進程號 # top -Hp 進程號 2.根據進程名字進行查詢: #?pstree -p `ps -e | grep server | awk '{pr ...
[轉載]了解Linux的進程與線程
本文轉自Tim Yang的博客http://timyang.net/linux/linux-process/ .對于理解Linux的進程與線程非常有幫助.支持原創.尊重原創,分享知識! 上周碰到部署在 ...
了解Linux的進程與線程
了解Linux的進程與線程 http://timyang.net/linux/linux-process/ 上周碰到部署在真實服務器上某個應用CPU占用過高的問題,雖然經過tuning, 問題貌似已經 ...
Linux 平臺如何查看某個進程的線程數?
Linux 平臺如何查看某個進程的線程數? ? 三種方法:1. 使用top命令,具體用法是 top -H 加上這個選項,top的每一行就不是顯示一個進程,而是一個線程. 2. 使用ps命令,具體用法是 ...
Linux下查看進程和線程
在linux中查看線程數的三種方法 1.top -H 手冊中說:-H : Threads toggle 加上這個選項啟動top,top一行顯示一個線程.否則,它一行顯示一個進程. 2.ps xH 手冊 ...
(轉)如何在Linux中統計一個進程的線程數
如何在Linux中統計一個進程的線程數 原文:http://os.51cto.com/art/201509/491728.htm 我正在運行一個程序,它在運行時會派生出多個線程.我想知道程序在運行時會 ...
隨機推薦
Cache 工具類
package com.thinkgem.jeesite.common.utils; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheM ...
開源欣賞wordpress之用戶新增user-new.php
require_once( dirname( __FILE__ ) . '/admin.php' ); 引入根文件. if ( is_multisite() ) { if ( ! current_us ...
BOM,Dom 回顧
加給元素: offsetLeft(距離定位父級的距離)/offsetTop(距離定位父級的距離)/offsetWidth(可視寬度)/offHeight(可視高度) clientLeft(左邊框寬度) ...
min_25篩
min_25篩 用來干啥? 考慮一個積性函數\(F(x)\),用來快速計算前綴和\[\sum_{i=1}^nF(i)\] 當然,這個積性函數要滿足\(F(x),x\in Prime\)可以用多項式表示 ...
hbase之認識
進入HBase客戶端命令操作界面?? ?$ bin/hbase shell 查看幫助命令?? ??? ?hbase(main):001:0> help 查看當前數據庫中有哪些表?? ??? ?h ...
30-Python3 正則表達式
30-Python3 正則表達式 ''' re.match函數 ''' import re print(re.match('www','www.runoob.com').span()) print(r ...
Luffy之登錄認證以及JWT
1.用戶認證 在前面我們已經完成了,前端登錄頁面的搭建,以及路由分配,現在我們作關于登錄認證部分的東西 Django提供了認證系統.認證系統包含: 用戶 權限:二元(是/否)標志指示一個用戶是否可以做 ...
JAVA國際化輸出日期格式
1.建議控制臺程序 使用 IntelliJ IDEA? 創建 MAVEN項目,?不選別的選項,則為控制臺程序. (其它方式創建的控制臺程序可能編譯不過) 2.源碼如下: import java.tim ...
總結
以上是生活随笔為你收集整理的linux下查看进程的线程数,linux查看进程的线程数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线性表之顺序表与单链表的区别及优缺点
- 下一篇: linux yum 安装widget,C