Hi.
Ich habe hier eine Klasse die von Thread erbt. Soweit so gut, die run() Methode des Objektes läuft genau so lang bis alle Arbeit getan ist. Das Objekt bleibt bestehen und soll bei neuer Arbeit run() wieder ausführen, allerdings passiert garnichtsmehr wenn ich start() aufrufe nachdem run() einmal durchgelaufen ist.
Die Methode die aufruft sieht so aus:
Das funktioniert soweit auch ganz gut. Nur wenn die Queue einmal abgearbeitet wurde und isAlive() dann wieder false zurück gibt, dann passiert garnichts mehr bei start().
In "Java ist auch eine Insel" hab ich dazu nichts gefunden
Ich habe hier eine Klasse die von Thread erbt. Soweit so gut, die run() Methode des Objektes läuft genau so lang bis alle Arbeit getan ist. Das Objekt bleibt bestehen und soll bei neuer Arbeit run() wieder ausführen, allerdings passiert garnichtsmehr wenn ich start() aufrufe nachdem run() einmal durchgelaufen ist.
Die Methode die aufruft sieht so aus:
Code:
public void neueArbeit(Arbeit arb){
//arbeit in queue ablegen
if(!this.isAlive()){
this.start();
}
}
Das funktioniert soweit auch ganz gut. Nur wenn die Queue einmal abgearbeitet wurde und isAlive() dann wieder false zurück gibt, dann passiert garnichts mehr bei start().
In "Java ist auch eine Insel" hab ich dazu nichts gefunden