Hallo, ich habe folgendes Problemchen:
Ich habe eine recht langwierige Berechnung in einen Thread gelegt (damit sie abgebrochen werden kann).
Der Aufruf soll durch eine Methode erfolgen, die (nach erfolgter Berechnung) das Ergebnis zurückgibt.
Ich habe das jetzt in etwa so gelöst:
Das funktioniert zwar; ich finde es aber eine unschöne Verschwendung, dass hier eine Schleife nichts anderes tut, als immer wieder einen Wert zu überprüfen, bis er endlich durch den SolveThread gesetzt wurde.
Deshalb meine Frage: Kennt jemand eine Möglichkeit, die Ausführung ganz anzuhalten und dann von außen (wenn der SolveThread fertig ist) wieder anzustoßen?
Ich habe eine recht langwierige Berechnung in einen Thread gelegt (damit sie abgebrochen werden kann).
Der Aufruf soll durch eine Methode erfolgen, die (nach erfolgter Berechnung) das Ergebnis zurückgibt.
Ich habe das jetzt in etwa so gelöst:
Java:
Objekt getResult() {
result = null;
new SolveThread(...).start();
while(result==null)
Thread.sleep(10);
return result;
}
Deshalb meine Frage: Kennt jemand eine Möglichkeit, die Ausführung ganz anzuhalten und dann von außen (wenn der SolveThread fertig ist) wieder anzustoßen?