» Referenzen / Klassen / ThreadGroup

Die Klasse repräsentiert eine Gruppe von Threads. Diese können wiederum andere Gruppen enthalten und es besteht in der Baumstruktur eine Eltern - Beziehung zwischen Subgruppen und ihren übergeordneten Gruppen. Den Threads innerhalb einer Gruppe ist es möglich, Informationen über diese zu erlangen. Eine derartige Abfrage ist allerdings nicht für weiter oben in der Hierarchie befindliche Gruppen möglich.

» ab JDK Version 1.0



public class ThreadGroup
extends Object
    

» Object


keine


» Elemente

In der folgenden Liste sind alle von uns bereits referenzierten Elemente der Klasse aufgeführt.

» Methoden » Konstruktoren

» activeCount
» activeGroupCount
» checkAccess
» destroy
» enumerate [1][2][3][4]
» getMaxPriority
» getName
» getParent
» interrupt
» isDaemon
» isDestroyed
» list
» parentOf
» setDaemon
» setMaxPriority
» toString
» uncaughtException


» ThreadGroup (1)
» ThreadGroup (2)

» Datenelemente » Destruktoren

keine


keine


» Konstruktoren / ThreadGroup (1)

Der Konstruktor instanziiert eine neue Thread - Gruppe. Die übergeordnete Gruppe ist die des gerade laufenden Threads. Zuvor wird die checkAccess - Methode ohne Parameter der übergeordnete Gruppe aufgerufen.

» Prototyp

public ThreadGroup(String name)
    
» Parameter

name Der Name der Gruppe.

» Ausnahmen & Fehler

SecurityException
Der Thread kann nicht in der Gruppe angelegt werden.

» ab JDK Version 1.0

» Konstruktoren / ThreadGroup (2)

Der Konstruktor instanziiert eine neue Thread - Gruppe. Die übergeordnete Gruppe ist explizit angegeben. Zuvor wird die checkAccess - Methode ohne Parameter der übergeordnete Gruppe aufgerufen.

» Prototyp

public ThreadGroup(ThreadGroup parent,String name)
    
» Parameter

parent Die übergeordnete Gruppe.
name Der Name der Gruppe.

» Ausnahmen & Fehler

SecurityException
Der Thread kann nicht in der Gruppe angelegt werden.
NullPointerException
Das Argument für die Gruppe ist eine Nullreferenz.

» ab JDK Version 1.0

» Methoden / activeCount

Die Methode liefert die Anzahl der aktuellen Threads in der aktuellen Thread - Gruppe und ihrer Subgruppen.

» Prototyp

public int activeCount()
    
» Parameter

keine

» Rückgabe

Wert Anzahl der Threads in der Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / activeGroupCount

Die Methode liefert die Anzahl der aktuellen Threads in den Subgruppen.

» Prototyp

public int activeGroupCount()
    
» Parameter

keine

» Rückgabe

Wert Anzahl der Threads in der Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / checkAccess

Die Methode terminiert, wenn der aktuelle Thread diesen Thread ändern kann. Sofern ein Sicherheitsmanager installiert ist, wird dessen checkAccess - Methode der Thread übergeben.

» Prototyp

public final void checkAccess()
    
» Parameter

keine

» Rückgabe

keine

» Ausnahmen & Fehler

SecurityException
Der aktuelle Thread darf auf diese Thread - Gruppe nicht zugreifen.

» ab JDK Version 1.0

» Methoden / destroy

Die Methode zerstört die Thread - Gruppe samt Subgruppen. Dazu muss die aktuelle Gruppe leer sein und alle ihre Threads müssen bereits beendet worden sein. Zuvor wird die checkAccess - Methode der Gruppe ohne Argumente aufgerufen.

» Prototyp

public final void destroy()
    
» Parameter

keine

» Rückgabe

keine

» Ausnahmen & Fehler

SecurityException
Der aktuelle Thread darf auf diese Thread - Gruppe nicht zugreifen.
IllegalThreadStateException
Die Gruppe ist nicht leer oder wurde bereits zerstört.

» ab JDK Version 1.0

» Methoden / enumerate [1][2]

Die Methode kopiert alle Threads der aktuellen Gruppe in ein Array. Es kann bestimmt werden, ob auch die Subgruppen mitkopiert werden. Zunächst wird die checkAccess - Methode der Gruppe ohne Argumente aufgerufen.

» Prototyp

public int enumerate(Thread[] list            )
public int enumerate(Thread[] list,boolean sub)
    
» Parameter

list In das zu kopierende Array.
sub Wenn True, dann werden die Threads in den Subgruppen mitkopiert. Ist das Zielarray zu klein, so werden nicht mehr mit einbindbare Threads unterschlagen.

» Rückgabe

Wert Anzahl der kopierten Threads.

» Ausnahmen & Fehler

SecurityException
Der Thread darf nicht durch die Gruppe iterieren.

» ab JDK Version alle 1.0

» Methoden / enumerate [3][4]

Die Methode kopiert alle Thread - Gruppen der aktuellen Gruppe in ein Array. Es kann bestimmt werden, ob auch die Subgruppen mitkopiert werden. Zunächst wird die checkAccess - Methode der Gruppe ohne Argumente aufgerufen.

» Prototyp

public int enumerate(ThreadGroup[] list            )
public int enumerate(ThreadGroup[] list,boolean sub)
    
» Parameter

list In das zu kopierende Array.
sub Wenn True, dann werden die Thread - Gruppen in den Subgruppen mitkopiert. Ist das Zielarray zu klein, so werden nicht mehr mit einbindbare Threads unterschlagen.

» Rückgabe

Wert Anzahl der kopierten Threads.

» Ausnahmen & Fehler

SecurityException
Der Thread darf nicht durch die Gruppe iterieren.

» ab JDK Version alle 1.0

» Methoden / getMaxPriority

Die Methode liefert die zur Zeit höchste verwendete Prioritätsstufe der Threads in der Gruppe.

» Prototyp

public final int getMaxPriority()
    
» Parameter

keine

» Rückgabe

Wert Die höchste Prioritätsstufe in der Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / getName

Die Methode liefert den Namen der Thread - Gruppe.

» Prototyp

public final String getName()
    
» Parameter

keine

» Rückgabe

String Der Name der Thread - Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / getParent

Die Methode liefert die übergeordnete Gruppe. Wenn es eine übergeordnete Gruppe gibt, so wird zunächst deren checkAccess - Methode ohne Parameter aufgerufen.

» Prototyp

public final ThreadGroup getParent()
    
» Parameter

keine

» Rückgabe

Referenz Eine Referenz auf die übergeordnete Gruppe.

» Ausnahmen & Fehler

SecurityException
Der Thread kann nicht auf die Gruppe zugreifen.

» ab JDK Version 1.0

» Methoden / interrupt

Die Methode unterbricht alle Threads dieser Gruppe und ihrer Subgruppen. Zuvor wird die checkAccess - Methode der Gruppe ohne Parameter aufgerufen.

» Prototyp

public final void interrupt()
    
» Parameter

keine

» Rückgabe

keine

» Ausnahmen & Fehler

SecurityException
Der aktuelle Thread darf nicht auf die Threads der Gruppe zugreifen.

» ab JDK Version 1.2

» Methoden / isDaemon

Die Methode prüft, ob die Thread - Gruppe eine Dämon - Gruppe ist. Eine solche Gruppe wird automatisch zerstört, wenn ihr letzter Thread beendet worden ist.

» Prototyp

public final boolean isDaemon()
    
» Parameter

keine

» Rückgabe

True Die Gruppe ist eine Dämon - Gruppe.
False Die Gruppe ist keine Dämon - Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / isDestroyed

Die Methode prüft, ob die Gruppe bereits zerstört wurde.

» Prototyp

public boolean isDestroyed()
    
» Parameter

keine

» Rückgabe

True Die Gruppe wurde zerstört.
False Die Gruppe wurde nicht zerstört.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.1

» Methoden / list

Die Methode gibt Informationen über die Gruppe auf dem Standard - Ausgabekanal aus.

» Prototyp

public void list()
    
» Parameter

keine

» Rückgabe

keine

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / parentOf

Die Methode prüft, ob die aktuelle Gruppe die gleiche ist wie die des Arguments, oder einer ihrer Vorfahrgruppen.

» Prototyp

public final boolean parentOf(ThreadGroup group)
    
» Parameter

group Auf die zu testende Gruppe.

» Rückgabe

False Die aktuelle Gruppe entspricht nicht dem Argument.
True Die aktuelle Gruppe entspricht dem Argument oder ist einer ihrer Vorfahren.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / setDaemon

Die Methode ändert den Dämon - Zustand dieser Gruppe. Zuvor wird die checkAccess - Methode der aktuellen Gruppe ohne Parameter aufgerufen. Eine Dämon - Gruppe wird automatisch mit dem Beenden des letzten Threads zerstört.

» Prototyp

public final void setDaemon(boolean mode)
    
» Parameter

mode Ist der Parameter True, so wird die Gruppe als Dämon markiert.

» Rückgabe

keine

» Ausnahmen & Fehler

SecurityException
Der aktuelle Thread kann den Status der Gruppe nicht ändern.

» ab JDK Version 1.0

» Methoden / setMaxPriority

Die Methode weist der Gruppe eine maximale Prioritätsstufe zu. Zuvor wird die checkAccess - Methode der Gruppe ohne Parameter aufgerufen.

» Prototyp

public final void setMaxPriority(int priority)
    
» Parameter

priority Die maximale Prioritätsstufe.

» Rückgabe

keine

» Ausnahmen & Fehler

SecurityException
Der aktuelle Thread kann die Gruppe nicht modifizieren.

» ab JDK Version 1.0

» Methoden / toString (Redefinition)

Die Methode liefert eine Stringrepräsentation. Diese enthält Informationen zur Gruppe.

» Prototyp

public String toString()
    
» Parameter

keine

» Rückgabe

String Stringrepräsentation der Gruppe.

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0

» Methoden / uncaughtException

Die Methode wird von der JVM aufgerufen, wenn ein Thread der Gruppe wegen einer Ausnahme gestoppt worden ist.

Existiert eine übergeordnete Gruppe, so wird die uncaughtException - Methode dieser Gruppe mit den gleichen Parametern aufgerufen. Ansonsten terminiert diese Methode, wenn es sich um eine Ausnahme der Klasse ThreadDeath handelt. Ist auch dies nicht der Fall, so wird die printStackTrace - Methode des Throwable - Objekts aufgerufen.

» Prototyp

public void uncaughtException(Thread thread,Throwable exception)
    
» Parameter

thread Der von der Ausnahme betroffene Thread.
exception Die unbehandelte Ausnahme.

» Rückgabe

keine

» Ausnahmen & Fehler

keine

» ab JDK Version 1.0