Originariamente inviato da orres21
cmq ora ho 1 altro problema e cioè visto che ho 11 ruote come faccio a far partire il thread 11 volte??
Un Thread, una volta avviato non può essere più ri-avviato, nemmeno dopo che il run() eseguito dal thread è terminato. Bisogna istanziare un nuovo java.lang.Thread e farlo partire con start().

Comunque la questione che non hai precisato è l'esatta sequenza/parallelismo che ci deve essere:

1) 11 producer e 11 consumer che girano con il massimo parallelismo possibile (per le risorse a disposizione)? Quindi ci sarebbero 11 urne contemporaneamente, mi pare logico.

2) 1 producer + 1 consumer per volta e per lanciare la prossima coppia di producer/consumer devi attendere la terminazione di entrambi i producer/consumer precedenti? Qui ci potrebbe essere anche solo una sola urna per volta (o ricrei una Urna oppure se Urna lo permette la riusi).

3) Un altro scenario a metà tra le possibilità 1 e 2?

Capisco che magari stai iniziando con Java o con i thread ma questi aspetti dovrebbero essere perlomeno un pochino chiari a te, se vuoi lavorarci.

E comunque, se sicuro che debba essere tutto così "macchinoso"? Se si tratta di un esercizio "didattico" che ti è stato assegnato, allora chiaramente è ok.