Heim >Java >javaLernprogramm >Wie kann ich alle laufenden Threads in einem Java-Programm programmgesteuert auflisten?

Wie kann ich alle laufenden Threads in einem Java-Programm programmgesteuert auflisten?

Barbara Streisand
Barbara StreisandOriginal
2024-12-14 21:10:14971Durchsuche

How Can I Programmatically List All Running Threads in a Java Program?

In Java programmgesteuert ausgeführte Threads auflisten

Java bietet einen integrierten Mechanismus zum Auflisten aller aktiven Threads innerhalb der Java Virtual Machine (JVM). Dazu gehören von der aktuellen Klasse erstellte und von externen Prozessen initiierte Threads.

Erhalten eines iterierbaren Thread-Sets

Um einen iterierbaren Satz aller laufenden Threads abzurufen, verwenden Sie den folgenden Code:

Set<Thread> threadSet = Thread.getAllStackTraces().keySet();

Dieser Ansatz bietet einen geringen Leistungsaufwand und verbraucht normalerweise eine vernachlässigbare Zeitmenge für eine angemessene Anzahl von Threads (z. B. 0). ms für 12 Threads in einer Azul JVM 16.0.1-Umgebung unter Windows 10).

Abrufen von Thread- und Klassenobjekten

Zusätzlich ist es möglich, die jeweils zugeordneten Thread- und Klassenobjekte zu extrahieren Thread in der Liste:

for (Thread thread : threadSet) {
    String threadName = thread.getName();
    Class<?> threadClass = thread.getClass();
}

Damit können Sie Thread-Eigenschaften und Klasseninformationen überprüfen, z. B. den Namen des Threads und die Java-Klasse, die es erstellt hat.

Das obige ist der detaillierte Inhalt vonWie kann ich alle laufenden Threads in einem Java-Programm programmgesteuert auflisten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn