Hallo,
Ich habe hier ein Programm, in dem 1 Thread erzeugt wird, welcher alle 500ms "Hallo" ausgibt. Dieser Thread soll nach 3 Sekunden unterbrochen werden (Geschieht in der main, indem ich die main 3 Sekunden schlafen lege und dann den Thread unterbreche).
Das ganze funktioniert aber irgendwie nicht, der Thread wird nicht beendet und gibt weiterhin "Hallo" aus....
Wo liegt mein Fehler?
Ich habe hier ein Programm, in dem 1 Thread erzeugt wird, welcher alle 500ms "Hallo" ausgibt. Dieser Thread soll nach 3 Sekunden unterbrochen werden (Geschieht in der main, indem ich die main 3 Sekunden schlafen lege und dann den Thread unterbreche).
Das ganze funktioniert aber irgendwie nicht, der Thread wird nicht beendet und gibt weiterhin "Hallo" aus....
Wo liegt mein Fehler?
Java:
public class Test {
public static void main(String[] args) {
Thread1 t1 = new Thread1();
t1.start();
System.out.println("main Thread Schlafen");
try {
Thread.sleep(3000);
} catch(InterruptedException e) {
}
System.out.println("main Thread aufgewacht");
t1.interrupt();
System.out.println("t1 unterbrochen");
}
}
Java:
public class Thread1 extends Thread {
public void run() {
while(interrupted() == false) {
System.out.println("Hallo");
try {
Thread.sleep(500);
} catch(InterruptedException e) {
}
}
}
}