Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save lsartori94/4957f9d63ab3518b01ed6a8d9af86a88 to your computer and use it in GitHub Desktop.
Save lsartori94/4957f9d63ab3518b01ed6a8d9af86a88 to your computer and use it in GitHub Desktop.
Monitor SALA;
{
int cant = 0; domidos = 0;
Cond espera;
procedure usar
{
if(cant == 1) {
dormidos++:
wait(espera);
} else cant ++
}
procedure terminar
{
if(dormidos == 0) cant--
else {
dormidos--;
signal(espera);
}
}
}
procedure clientes [i:1..N]
{
SALA.usar();
delay(t);
SALA.terminar();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment