# Auf Thread warten ohne alles andere zu blockieren



## Froop (13. Apr 2006)

Hallo zusammen,

meine GUI ruft öfter Threads auf, die über ein Java Native Interface Aktionen außerhalb der GUI durchführen. 

Mein konkretes Problem:
Ich suche nach einer Möglichkeit mit der ich überwachen kann, ob der Thread beendet ist ohne den Rest der GUI dadurch zu blockieren. Das Ende des Threads kann ich mit isAlive erfahren jedoch hängt dadurch meine Anwendnung.
Kann ich in meinem Thread ein Ereignis auslösen, welches ich dann zum Beispiel in meinem Dialog abfangen kann?

Ich hoffe es ist klar was ich meine.

Vielen Dank schon einmal für die Hilfe.

Grüße,
Froop


----------



## L-ectron-X (13. Apr 2006)

Ja, übergib dem Thread bei seiner Erzeugung eine Referenz auf das Objekt, welches benachrichtigt werden soll.
Falls es mehrere Objekte sind, könnte der Thread die auch in einer Liste verwalten.
Wenn sich der Thread beendet hat, bzw. er mit seiner Aufgabe fertig ist, schickt er eine Nachricht (Methode aufrufen) an die Objekte, die benachrichtigt werden sollen.
Um das Ganze zu standardisieren, sollten die Objekte, die benachrichtigt werden sollen, alle von einem Typ sein, was sich durch Implementierung eines Interfaces sicherstellen lässt.
Vom Prinzip her also soetwas: http://www.java-forum.org/de/viewtopic.php?p=140947#140947


----------



## Froop (13. Apr 2006)

Vielen Dank für deine rasche Antwort.

Es ist leider nicht ganz das was ich suche.
Ich möchte das mein Thread irgendetwas setzt, z.B. eine globale Variable, und die GUI in einer Art von "Listener" selbständig überprüft, ob sie auch loslegen kann. Wie ich einen solchen "Listener" setzen kann weiß ich allerdings nicht.

Grüße Froop


----------



## L-ectron-X (13. Apr 2006)

Ich denke schon, dass das so möglich ist.


----------



## Gast (13. Apr 2006)

Hallo,

wenn man es so rum realisieren will, benötigt man einen separaten Thread der in Intervalen die Variable abfragt.

Allerdings ergibt das aus meiner Sicht keinen Sinn und besser wäre es a la L-ectron-X


----------



## Froop (13. Apr 2006)

Ich denke auch, dass die Variante mit dem Abfragethread nicht besonders elegant ist.
Ich werde wohl den Vorschlag von L-ectron-X umsetzen.

Danke für die Antworten,
Froop


----------

