Hallo,
ich schreibe ein Programm, in welchem ein Thread gestartet wird und das Programm in eine while-Schleife läuft, diese prüft bei jedem Durchlauf den boolean-Wert einer Variablen "simuLaeuft",
wird dieser Wert durch den Thread auf false gesetzt, soll die Schleife abbrechen, leider tut sie das nicht.
der Programmausschnitt der Klasse Zeichenflaeche mit der while-Schleife und in starten des Threads gestartet wird
run-Methode des gestarteten Threads
Woran liegt das?
ich schreibe ein Programm, in welchem ein Thread gestartet wird und das Programm in eine while-Schleife läuft, diese prüft bei jedem Durchlauf den boolean-Wert einer Variablen "simuLaeuft",
wird dieser Wert durch den Thread auf false gesetzt, soll die Schleife abbrechen, leider tut sie das nicht.
der Programmausschnitt der Klasse Zeichenflaeche mit der while-Schleife und in starten des Threads gestartet wird
Java:
th = new Simulation(this);
th.start();
simuLaeuft = true;
while(simuLaeuft) {
//do nothing
}
th.interrupt();
run-Methode des gestarteten Threads
Java:
public void run() {
while(!isInterrupted()) {
try {
sleep(2000);
zeichenfl.simuLaeuft = false;
} catch (InterruptedException e) {
interrupt();
}
}
}
Woran liegt das?