Wie die Anzahl der Threads in einem Prozess auf Linux Count
In diesem Artikel werden wir wissen, wie die Anzahl der Threads in einem Prozess auf Linux-Umgebung zu zählen, gibt es mehrere Möglichkeiten, es zu tun, aber wir werden mit "/ proc" und "ps" -Befehl zu lernen.
Mit '/ proc'
In Proc Pseudo-Dateisystem befindet sich dieses in / proc-Verzeichnis, und das ist der einfachste Weg, um die Fadenzahl der Aufgabe oder aktiven Prozess zu sehen. Die 'proc' Verzeichnis exportiert die Form von lesbaren Textdateien, die Informationen an die bestehenden Prozesse und die Systemhardware wie Interrupts, CPU, Speicher, Festplatten etc. im Zusammenhang zu geben,
# Cat / proc / <pid> / status
Der obige Befehl die allgemeine Syntax ist, und dies wird zeigen detaillierte Informationen über den Prozess mit <pid> umfasst dieser Prozess Zustand (übergeordnete PID, UID, GID, Schlafen und Status läuft, wird die Anzahl der Dateien verwendet, und nicht des Wettbewerbs). Es gibt auch die gesamte Anzahl der Threads und den Prozess.
Zum Beispiel wollen wir den Prozess Zählung einer Prozess-ID 2907 zu kennen, die die Prozess-ID von Apache auf meinem Linux-Umgebung ist, dann können wir mit diesem unter Befehl zu sehen.
# Cat / proc / 2907 / status Name: php-fpm Zustand: S (Schlafen) TGID: 2907 Pid: 2907 Ppid: 2124 TracerPid: 0 Uid: 48 48 48 48 Gid: 48 48 48 48 Utrace: 0 FDSize: 64 Gruppen: 48 VmPeak: 445.536 kB VmSize: 382.172 kB VmLck: 0 kB VmHWM: 84.688 kB VmRSS: 21856 kB Vmdata: 17376 kB VmStk: 88 kB VmExe: 3396 kB VmLib: 49280 kB VmPTE: 548 kB VmSwap: 0 kB Themen: 1 SigQ: 0/15205 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000000001000 SigCgt: 0000000184000004 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: FFFFFFFFFFFFFFFF Cpus_allowed: 1 Cpus_allowed_list: 0 Mems_allowed: 00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001 Mems_allowed_list: 0 voluntary_ctxt_switches: 11419 nonvoluntary_ctxt_switches: 25334
In diesem obigen Beispiel können wir die Themen sehen: 1, bedeutet, dass der Apache-Prozess ist nur ein Thread verwendet wird.
Wir können diesen Befehl auch verwenden, um die Zählung der Anzahl der Verzeichnisse im Prozess gefunden zu finden, für die wir die folgenden Befehl verwenden können -
# / Proc / <pid> / Task | Toilette
Dies zeigt, dass in jedem Thread, der in dem Prozess erstellt, gibt es eine entsprechende Verzeichnis ist, wird in / proc / <pid> / Task erstellt werden, mit seiner ID benannt.
Zum Beispiel, führen Sie den folgenden Befehl
# Ls / proc / 2907 / Status | Toilette 1 1 18
Mit "PS"
Die "ps" -Befehl wird durch Hinzufügen der 'H' Option an den Befehl, die drucken können die Fadenzahl für den Prozess den laufenden Prozess des Systems anzuzeigen. Die 'h' Option werden die Header am Anfang der Ausgabe verbergen.
# Ps hH p 14487 | wc -l 1
In diesem obigen Beispiel haben wir die Themen zu sehen: 1, bedeutet das "Apache" Prozess verwendet nur ein Thread
Von diesem Artikel können wir nun in der Lage, die Anzahl der Prozessanzahl für die Prozess-ID oder dem Verfahren verwendet, um herauszufinden, können wir jede Methode verwenden, um die Anzahl der Prozesse, um herauszufinden, auf dem Linux-Umgebung ausgeführt werden.