V I S U A L I Z Z A D I S C U S S I O N E |
IKON |
Inserito il - 23/10/2009 : 15:08:09 ragazzi il prof oggi ha cominciato questo esercizio in laboratorio e io sinceramente ci ho capito ben poco...potete darmi una mano???
Simulare in Java, utilizzando un monitor (costrutto synchronized), lo scenario in cui un gruppo di n visitatori vogliono entrare in un museo, ma possono entrare 3 per volta. Ogni visitatore `e rappresentato da un thread. Un visitatore attende un tempo casuale, cerca di entrare, effettua la visita ed esce.
CODA [1,3,5,21,34,56,76,77,87,89]coda visitatori intervalli: [1,2,2,16,13,22,20,1,10,2]
main -genera 18 thread di tipo visitatore dando in input al suo costruttore il tempo di attesa prima di chiedere di entrare
classe visitatore implements Thread int attesa -il costruttore lega il paramentro formale al campo di esemplare e fa partire il thread(.start()) -il metodo run mette in sleep il thread per attesa secondi ed invoca il metodo del gestore per la richiesta di entrata nel museo
GESTORE se sono arrivete tre richieste faccio entrare
classe gestore int richieste int[] richiedenti -public prenota_entrata(visitatore v) incrementa richieste mette in richiedenti v while richieste > 2 and !museo.libero; richieste-=3 fupri coda chiama museo.stanno_entrando()
MUSEO tre persone entrano e ci restano per 5 secondi, poi escono
classe museo bool libero = true;
public libero() return libero
public stanno_entrando() libero=false sleep(5000) libero = true ________________________________________- ringrazio anticipatamente tutti quelli che mi daranno una mano :) |
2 U L T I M E R I S P O S T E (in alto le più recenti) |
dunerpenpo |
Inserito il - 24/10/2009 : 16:25:39 Se vuoi ho la soluzione dello stesso esercizio dell'anno scorso. Se vuoi la carico ma non c'era nessun riferimento riguardo gli intervalli della coda (che tra l'altro non ho capito cosa siano...) |
elsandro88 |
Inserito il - 24/10/2009 : 16:17:10 secondo il prof la classe Gestore è inesatta..quindi le cose sono due..o aspetti lunedi a lezione xke lo rivedremo in aula..oppure...in bocca al lupo |
|
|