Konrad-Adenauer-Gymnasium Langenfeld

Informatik Grundkurs Q1

Überblick über die Klasse Thread

Wichtige Methoden der Klasse Thread

public Thread(ThreadGroup gruppe, Runnable ziel, String name)

  • Erzeugt einen neuen Thread, der in ziel abläuft, zur Gruppe gruppe gehört und den Namen name hat.
  • Jeder der Parameter kann auch fehlen – nur ThreadGroup als einziger Parameter ist nicht möglich. Fehlt name, wird ein Name vom System erzeugt. Fehlt einer der anderen Parameter, entspricht dies dem Aufruf dieser dreiparametrigen Version mit dem aktuellen Parameter null an der entsprechenden Stelle.
  • Ist gruppe gleich null, gehören der erzeugte und der ihn erzeugende Thread zur selben Gruppe.
  • Ist ziel ungleich null, wird die run-Methode von ziel aufgerufen, wenn dieser Thread gestartet wird; anderenfalls bewirkt der Start des Threads den Aufruf der run-Methode dieses Threads.

public void start()

  • Diese Methode wird für ein Thread-Objekt nur aufgerufen – nicht deklariert. Der Aufruf bewirkt, dass der Thread geladen und dann seine run-Methode aufgerufen wird.

public void run()

  • Das Hauptprogramm eines Threads, das indirekt über start() aufgerufen wird.

public static void sleep(long milli)

public static void sleep(long milli,int nano)

  • Der Thread unterbricht sein Ausführung für milli Millisekunden (und nano Nanosekunden).

public String getName()

public void setName(String s)

  • Liefert bzw. setzt den Namen des Threads.

public final join(long milli,int nano)

  • Wartet höchstens milli Millisekunden (und nano Nanosekunden), bis der Thread stirbt. Der zweite oder beide Parameter können auch fehlen. Fehlen beide oder sind die aktuellen Parameter 0, wird beliebig lange gewartet.

public static void yield()

  • Gibt kurzzeitig seine Aktivität auf, um anderen Threads die Gelegenheit zur Ausführung zu geben (yield = Vorfahrt gewähren!).

public final boolean isAlive()

  • Liefert das Ergebnis, ob der Thread lebt.

public void interrupt()

  • Unterbricht diese Thread.

public static Thread currentThread()

  • Liefert die Referenz auf den gerade laufenden Thread.

 

Die Thread-Methoden der Klasse Objekt

public final void wait()

public final void wait(long milli)

public final void wait(long milli,int nano)

  • Gibt den Monitor frei und wartet, bis ein anderer Thread ihn durch den Aufruf von notify() oder notifyAll() darüber informiert, dass sich der Monitor geändert hat.
  • Die beiden letzten Methoden warten höchstens solange, bis die angegebene Zeit abgelaufen ist.
  • Nach Ablauf der Wartezeit reihen sie sich wieder in die Warteschlange ein.
  • Diese Methode werfen die Ausnahme InterruptedException aus.

public final void notify()

  • Weckt einen einzigen Thread auf, der auf den Monitor wartet.

public final void notifyAll()

  • Weckt alle Threads auf, die auf den Monitor warten.

© Ralph-Erich Hildebrandt, 27. September 2004