Implementierung nebenläufiger Prozesse - so genannte Threads - in Java
|
|
|
In der Vorlesung am 05.01.2012 wird ein weiteres Beispiel zur Anwendung von Threads mit Hilfe der Implementierung der Schnittstelle Runnable gegeben werden. Der Download wird danach an dieser Stelle hier eingepflegt werden.
Implementierung nebenläufiger Prozesse durch Erben von der Klasse Thread
|
Methodenname | Beschreibung | Beispiel |
---|---|---|
run() |
Methode, in der der Prozeß steht, der parallelisiert werden soll. Oft steht hier eine Endlosschleife. |
public void run() |
start() |
Nach Erzeugen eines Thread-Objekts wird die Methode run() erst nach Aufruf von start() gestartet. |
MeinThread mT = new MeinThread(); |
sleep(long millisekunden) |
Statische Methode, die den Prozess für die angegebene Anzahl an Millisekunden pausiert, in dem sie steht. Es kann sich dabei sowohl um ein Thread, als auch um den Hauptprozeß handeln. |
try(){Thread.sleep(1000);} |
boolean isAlive() |
Prüft, ob Thread gestartet wurde und die Methode run() nicht abgeschlossen ist oder gestoppt wurde. |
if(mT1.isAlive()){...} |
stop() |
Hält das Thread endgültig an. Systemressourcen wieder frei. |
mT1.destroy(); |
suspend() |
Thread auf unbestimmte Zeit in seiner Ausführung unterbrechen. |
mT1.suspend(); |
resume() |
Thread, das mit suspend() unterbrochen wurde wieder weiter arbeiten lassen. |
mT1.resume(); |
setName(String name) |
Thread mit Namen versehen |
mT1.setName("T1"); |
String getName() |
Threadnamen auslesen |
String n = mT1.getName(); |
Thread currentThread() |
Statische Methode, die eine Referenz auf das derzeit aktive Thread zurückgibt. |
Thread aktiv = Thread.currentThread(); |
synchronized() |
Methode, die immer nur von einem Thread benutzt werden darf. D.h. bevor Thread B sie benutzen darf, muß sie für Thread A ganz durchgelaufen sein. |
public static synchronized void meineMethode(){...} |
Tabelle 0-1: Beschreibung wichtiger in der Klasse Thread verfügbarer Methoden
