Hallo,
wir haben folgendes Problem: Wir sollen ein simples Programm schreiben, dass alle 300ms den Wert einer Variable ausgibt. Gelöst werden soll das ganze mittels einen Threads, der den Wert ausgibt und dann 300ms schläft. Der "Dumper" muss als externe Klasse gestaltet werden, und MultiThreaded darf nicht als static deklaiert werden. Der Code:
Der "Dumper":
Das Problem ist also, dass er die Variable nicht "kennt". Vielleicht könnt ihr uns weiterhelfen. Vielen Dank schonmal!
wir haben folgendes Problem: Wir sollen ein simples Programm schreiben, dass alle 300ms den Wert einer Variable ausgibt. Gelöst werden soll das ganze mittels einen Threads, der den Wert ausgibt und dann 300ms schläft. Der "Dumper" muss als externe Klasse gestaltet werden, und MultiThreaded darf nicht als static deklaiert werden. Der Code:
Java:
public class MultiThreaded {
volatile int status ;
public static void main(String[] args) {
System.out.print("BEGIN");
new MultiThreaded().execute_input();
System.out.print("END");
}
public MultiThreaded() {
status = 0;
new Dumper().start();
}
public void execute_input() {
int input;
while (true) {
try {
input = System.in.read();
} catch (Exception e) {input = 0;}
switch(input) {
case '1' :
case '2' :
case '3' :
status = input-'0';
break;
case 'q' :
return;
default:
}
}
}
}
Der "Dumper":
Java:
public class Dumper extends Thread {
public void run() {
while (true) {
[COLOR="Red"]Fehler ->[/COLOR] System.out.println("[" + MultiThreaded.status + "]");
try {
Thread.sleep(300);
}
catch (InterruptedException e) {}
}
}
}
Das Problem ist also, dass er die Variable nicht "kennt". Vielleicht könnt ihr uns weiterhelfen. Vielen Dank schonmal!
Zuletzt bearbeitet: