Htop zeigt mehrere Java-Prozesse mit unterschiedlichen Pids

74

Htop auf meinem Linux-Rechner zeigt viele "Prozesse" nach dem Start eines Java-Programms / JVM. Ich verstehe, dass die JVM mehrere Threads ausführt (für das eigentliche Programm, für die Garbage Collection usw.).

Aber wie kommt es, dass htop sie als mehrere Prozesse mit unterschiedlichen Pids auflistet? Was genau sind diese Prozesse?

b.buchhold
quelle
Unter alten Linux-Versionen wurden mehrere Threads als mehrere Prozesse implementiert. Natürlich kann ich mir nicht vorstellen, dass jemand mehr ein so altes Betriebssystem verwendet. ;)
Peter Lawrey
Ich habe mich schon immer darüber gewundert - ich habe gerade ein Beispiel an den ursprünglichen Beitrag angehängt - hoffe, das ist in Ordnung.
Jer
Möglicherweise müssen Sie Ihren Browser vergrößern, um ihn zu erkennen.
Jer
unix.stackexchange.com/questions/10362/…
Ciro Santilli 法轮功 冠状 病 六四 事件 18

Antworten:

108

Eigentlich ist es nur so, dass htop standardmäßig jeden Thread als separaten Prozess anzeigt. Sie können die Zeile hide_userland_threads=1zu Ihrer ~/.config/htop/htoprcDatei hinzufügen , um nur eine Zeile anzuzeigen.

Siehe /unix/10362/why-does-htop-show-more-process-than-ps

Jer
quelle
82
Hallo, htop Autor hier. Neuere Versionen verwenden nicht ~/.htoprc, sondern ~/.config/htop/htoprcden XDG-kompatiblen Pfad. Ich weiß auch, dass es keine Unix-Sache ist, aber ich rate davon ab, die htoprc-Datei direkt zu bearbeiten. Betrachten Sie es als internes Tool - bitte bearbeiten Sie es über den Setup-Bildschirm in htop (F2). Das htoprc-Format ist nicht dokumentiert und kann sich zwischen den Releases ändern (htop übernimmt die Konvertierung intern, wenn sich das Format ändert.)
Hisham HM
24
Nach F2 befindet sich die eigentliche Option zum Ausblenden von Threads unter "Anzeigeoptionen " und heißt "Benutzerland-Threads ausblenden" . Durch HDrücken von wird diese Option auch im Hauptbildschirm umgeschaltet.
BoZenKhaa