ho fatto passi avanti...ma non riesco a capire come fare a cambiare il valore di A.
Se voglio impostare a = 1000 e poi farlo elaborare dal thread, e cosi via....
ad esempio poi metto a = 2000 e il thread deve leggere quel valore, cosa devo fare?
class th implements Runnable{
private ogg rif;
th(ogg o){
rif=o;
}
public void run(){
try{
System.out.println("passo da qui ciao");
rif.setA(rif.metodo1());
Thread.sleep(5000);
rif.setB(rif.metodo2());
System.out.println(rif.getA() + rif.getB());
}
catch (InterruptedException e){
System.out.println("Thread interrotto");
}
}
}
class ogg{
private int a;
private int b;
public int metodo1(){
System.out.println("metodo1");
return 5;
}
public int metodo2(){
System.out.println("metodo2");
return 2;
}
public void metodo3(){
System.out.println("metodo3");
}
public int getA(){
return a;
}
public int getB(){
return b;
}
public void setA(int a){
this.a = a;
}
public void setB(int b){
this.b = b;
}
}
class mainth{
public static void main(String args[]){
ogg o = new ogg();
Runnable r = new th(o);
Thread t = new Thread(r);
t.start();
o.setA(1000);
}
}
per caso, non è possibile cambiare i valori a cui ha accesso un thread, perchè non si può fermare?![]()

Rispondi quotando