A seguir: Leitores e Escritores: solução Acima: O Problema dos Leitores Anterior: O Problema dos Leitores
key mutex; bed b;
int nr = 0, nw = 0;
void requestWrite(void) {
lock(mutex);
while((nr > 0) || (nw > 0)) {
wait(b,mutex);
}
nw++;
unlock(mutex);
}
void requestRead(void) {
lock(mutex);
while(nw > 0) {
wait(b,mutex);
}
nr++;
unlock(mutex);
}