- - - - CENAPAD-MGCO

contents index A seguir: Leitores e Escritores: 1a Acima: Propriedades de programas paralelos Anterior: Propriedades de programas paralelos


Leitores e Escritores: 1a solução

 

key mutex; bed b;  
int nr = 0, nw = 0;  
  
void requestWrite(void) {    
   lock(mutex);  
      while((nr $>$ 0) \verb#||# (nw $>$ 0)) {   
         wait(b,mutex);  
      }    
      nw++;  
   unlock(mutex);  
}   
  
void requestRead(void) {   
   lock(mutex);   
      while(nw $>$ 0) {    
         wait(b,mutex);   
      }    
      nr++;   
   unlock(mutex);   
}



Osvaldo Carvalho - Postscript - Comentários?