Hallo,
ich habe unteres Programm, in dem ein Thread etwas macht, in diesem Fall etwas auf die Konsole ausgeben. Nach jeder Ausgabe wartet dieser Thread 1sec. Ein zweiter Thread schießt den ersten Thread ab. Meine Frage wäre jetzt, wie kann ich den ersten Thread sicher abschießen, ohne eine Exception zu bekommen. Geht das irgendwie in der Richtung, dass ich vor dem Abschießen den Thread wieder aufwecke und dann in die ewigen Jagtgründe schicke oder muss ich mit der Exception java.lang.InterruptedException: sleep interrupted leben?
Besten Dank.
ich habe unteres Programm, in dem ein Thread etwas macht, in diesem Fall etwas auf die Konsole ausgeben. Nach jeder Ausgabe wartet dieser Thread 1sec. Ein zweiter Thread schießt den ersten Thread ab. Meine Frage wäre jetzt, wie kann ich den ersten Thread sicher abschießen, ohne eine Exception zu bekommen. Geht das irgendwie in der Richtung, dass ich vor dem Abschießen den Thread wieder aufwecke und dann in die ewigen Jagtgründe schicke oder muss ich mit der Exception java.lang.InterruptedException: sleep interrupted leben?
Besten Dank.
Java:
package threadsleeptest;
public class Main {
public Main() {
final Runnable runnableRUN = new Runnable() {
public void run() {
while(true) {
System.out.println("Ich laufe im RUN");
try {
Thread.sleep(1000);
}
catch(Exception e) {
e.printStackTrace();
}
}
}
};
final Thread thRUN = new Thread(runnableRUN);
thRUN.start();
final Runnable runnableINTERRUPT = new Runnable() {
public void run() {
while(true) {
thRUN.interrupt();
}
}
};
final Thread thINTERRUPT = new Thread(runnableINTERRUPT);
thINTERRUPT.start();
}
public static void main(String[] args) {
final Main main = new Main();
}
}