Ich habe das Programm pstree -p 31872 ausgeführt, das die folgende Ausgabe gedruckt hat:
ruby(31872)─┬─{ruby}(31906)
└─{ruby}(32372)
Die Manpage für pstree sagt:
Untergeordnete Threads eines Prozesses befinden sich unter dem übergeordneten Prozess und werden mit dem Prozessnamen in geschweiften Klammern angezeigt, z
icecast2---13*[{icecast2}]
(Das Obige wird aufgrund der fehlenden Option -p, die die Komprimierung deaktiviert, anders angezeigt.)
Wenn Sie pstree 31872 ohne -p ausführen, erhalten Sie:
ruby───2*[{ruby}]
Wenn ich versuche, diese PIDS mit ps zu beobachten , werden keine Ergebnisse gefunden. Die Pids existieren jedoch in / proc.
Meine Frage ist, warum Threads unterschiedliche Pids haben sollten. Ich würde erwarten, dass sie mit dem Prozess identisch sind (31872). Das gleiche Verhalten wird beim Ausführen von htop beobachtet.