UFMG - Pós-graduação em Ciência da Computação - Programação Paralela

A seguir: Release Acima: Questão 1 - 9 Anterior: Solução Goedson


Request

request(int n) {

   Bed b;
   Node n;

   lock(mutex);

   if (n > q.getHighestPriority() || n > free_resources) {
      b = new Bed();
      x = new Node(n,b);
      q.put(x);
      wait(b,mutex);
      unlock(mutex);
      return x.r;
   } else {
     free_resources -= n;
     unlock(mutex);
     return n;
   }
}



Osvaldo Carvalho