Torna in homepage www.vincenzomanzoni.com
Homepage personale e blog di Vincenzo Manzoni
 
 FAQFAQ   CercaCerca   Cerca con GoogleCerca con Google   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati   Feed AtomFeed
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

[Reti e S.O.] Prod/Cons bounded buffer con wait e notify

 
Questo forum è chiuso: Non puoi inserire, rispondere o modificare gli argomenti.   Quest'argomento è chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum -> Men at work
Precedente :: Successivo  
Autore Messaggio
Andrea
Moderatore
Moderatore


Registrato: 23/12/03 13:10
Messaggi: 5200

MessaggioInviato: Dom Mag 30, 2004 3:43 pm    Oggetto: [Reti e S.O.] Prod/Cons bounded buffer con wait e notify Rispondi citando

Questa implentazione (nello zip c'è tutto) prevede l'ennesima variante del caso Produttore/Consumatore:

I produttori (nel mio test ne ho messi due, ma si possono aumentare) scrivono in un'area buffer di ampiezza limitata dei numeri da 0 a 1000, mentre i produttori (sempre due, aumentabili a piacere) li leggono e li consumano. Che circo! Shocked

Per evitare inutili attese operose ho usato i metodi wait e notifyAll... purtroppo chi ha un po' di occhio sull'OOP noterà che l'utilizzo di NotifyAll() non è molto efficiente in quanto notifica un evento sul buffer, risvegliando consumatori e produttori indistintamente (che eventualmente tornano a dormire se non è l'evnto da loro aspettato). Forse era meglio usare il pattern observer-observable, ma non è programma di esame.

Altre due note: i metodi accesori (get e put) di Bounded non controllano lo stato del buffer (pieno o vuoto) e riempiono ed estraggono a vite! scusate, ma non avevo tempo Smile, tanto per quello che serve al programma vanno più che bene, il controllo è delegato ai produttori e ai consumatori. Inoltre notifyAll() è chiamato anche se il buffer non era vuoto o pieno... non cambia niente, ma è poco efficiente, avremo delle notifiche inutili, ma non avevo tempo di modificare... Crying or Very sad per lo stesso motivo il codice è poco commentato, vedrò di sistemarlo piùavanti, se avete problemi, scrivete qui sotto o se proprio... telefonatemi! Wink

Buona giornata di sole! Crying or Very sad Adesso mi darò ai socket Crying or Very sad Crying or Very sad Crying or Very sad
Top
Profilo Invia messaggio privato MSN
Mostra prima i messaggi di:   
Questo forum è chiuso: Non puoi inserire, rispondere o modificare gli argomenti.   Quest'argomento è chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum -> Men at work Tutti i fusi orari sono GMT 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi


Powered by phpBB © 2001, 2005 phpBB Group
phpbb.it