PDA

Visualizza la versione completa : [java] thread e monitor


kuarl
04-04-2003, 21:25
domani ho compito sui thread.... una sola cosa non mi pianamente chiara, cosa sono i monitor?? da qualke parte parla di monitor ma non ho ben capito ke cavolo sono....

poi, tutte le classi ereditano wait, notify e notifyAll da object, ma a che servono precisamente??

grassie

Zalex
04-04-2003, 22:53
i monitor garantiscono mutua esclusione!cioe' fa in modo che due thread(o processi) non accedano contemporaneamente alla stessa struttura dati!!in Java si puo' ottenere questo sincronizzando i thread che possono accedere contemporaneamente allo stesso campo dati(la keyword e' syncronized)!
all'interno dei metodi sincronizzati e' possibile invocare i metodi wait() e notify()(o notifyAll())!
invocando una wait() il thread va in attesa e viene risvegliato quando qualche altro thread lo risveglia con notify()!
se ci sono piu' thread in attesa, con notify() viene svegliato uno a caso!con notifyAll() vengono risvegliati tutti!!

vuoi che ti faccia un esempio?o mi son fatto capire abbastanza?

Loading