Hallo,
ich habe folgendes Poblem. Ich habe eine Klasse geschrieben der als Thread dienen soll. In gekürzter Form sieh das ungefähr so aus:
So ungefähr sieht das dann aus. Der Thread läuft auch durch nachdem ich ihn von einer anderen Klasse her gestartet habe. Mein Problem ist nun das der Thread nach einem Durchlauf immer im status RUNNABLE verharrt. Laut meiner Recherchen müsste der Thread jedoch nach einmaligem Durchlauf der run() Methode zu ende sein. Ich habe schon versucht den Thread mit start() und run() zu starten. Bei beiden hab ich aber dasselbe Problem.
Was mach ich da falsch?
ich habe folgendes Poblem. Ich habe eine Klasse geschrieben der als Thread dienen soll. In gekürzter Form sieh das ungefähr so aus:
Code:
public class Thread implements Runnable {
Model model;
View view;
public TetrisThread(Model model, View view){
this.model=model;
this.view = view;
}
public void run(){
try {
while (!Thread.currentThread().isInterrupted()) {
//running = true;
//try{ Thread.sleep(600); }
//catch (InterruptedException e) { System.out.println(e);}
for(int i=0;i<12;i++){
if (i==5){
model.bottomcrash= true;
break;
}
}
model.tuwas();
view.tuwas();
try{ Thread.sleep(200); }
catch (InterruptedException e) { System.out.println(e);}
}
Thread.currentThread().interrupt();
System.out.println("thread status: "+Thread.currentThread().getState() );
running = false;
System.out.println("running "+running);
}
}
catch (ThreadDeath td) {
System.out.println(td);
Thread.currentThread().interrupt();
//throw td;
}
}
So ungefähr sieht das dann aus. Der Thread läuft auch durch nachdem ich ihn von einer anderen Klasse her gestartet habe. Mein Problem ist nun das der Thread nach einem Durchlauf immer im status RUNNABLE verharrt. Laut meiner Recherchen müsste der Thread jedoch nach einmaligem Durchlauf der run() Methode zu ende sein. Ich habe schon versucht den Thread mit start() und run() zu starten. Bei beiden hab ich aber dasselbe Problem.
Was mach ich da falsch?