11.04.2013 Views

Sezione critica

Sezione critica

Sezione critica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Problemi tipici di sincronizzazione<br />

• Problema lettore-scrittore<br />

Processo lettore<br />

wait(mutex);<br />

num_lettori++;<br />

if (num_lettori == 1)<br />

wait(scrittura);<br />

signal(mutex);<br />

<br />

wait(mutex);<br />

num_lettori--;<br />

if (num_lettori == 0)<br />

signal(scrittura);<br />

signal(mutex);<br />

aggiornamento di num_lettori in<br />

mutua esclusione tra i lettori<br />

se non ho lettori, prima di<br />

leggere, aspetta uno scrittore<br />

permetti ad un altro lettore di<br />

avanzare<br />

aggiornamento di num_lettori in<br />

mutua esclusione tra i lettori<br />

se non ho lettori, permetti ad<br />

un'altro scrittore di avanzare<br />

permetti ad un altro lettore di<br />

avanzare<br />

54

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!