Salve ragazzi.
Io ho più thread che eseguono questa parte del programma (metodo run):
codice:
OccupaSedia disponibile = new OccupaSedia(nPart,kSedie,nSess);
System.out.println("Numero sedie disponibili:"+disponibile.getSedie());
sleep(1000);
if (sedia.getStato("sedia"+i)==false){
sedia.occupa(name,sediam);
disponibile.decrementaSedie();
Arrivato qui mi lancia l'eccezione (Lanciata eccezione metodo decrementa) e non mi decremente.
Questo è il metodo decrementaSedia della classe OccupaSedia:
codice:
public void decrementaSedie(){
try{
notifyAll();
wait();
numSedieDisponibili--;
notifyAll();
}
catch(Exception x){System.out.println("Lanciata eccezione metodo decrementa");}
}
Sapete dirmi perchè? e come si risolve?
Grazie a tutti.