Originariamente inviata da
andbin
..
Grazie mille, sei stato gentilissimo e hai risolto tutti i miei dubbi in pieno! Potete chiudere
Aggiungo, per completezza che , dato che volevo controllare quale thread stesse utilizzando i vari metodi ho aggiunto
codice:
String threadName = Thread.currentThread().getName();
All'interno dei metodi synchronized
codice:
public synchronized int getVar () { String threadName = Thread.currentThread().getName();
System.out.println(">> SONO: "+threadName);
return acc; }
public synchronized int sommaVar(int i){
String threadName = Thread.currentThread().getName();
System.out.println("Sono il thread " + threadName + " e sommo acc="+acc+" ad i="+i);
acc+=i;
return acc;
}
e funziona correttamente inizializzando i thread come:
codice:
Thread product1 = new Thread(new products(x),"A");
Che da in output il nome giusto assegnato nel main invece di "main" come capitava prima.