Hola,
En este ejercicio se tiene una rueda para hamsters.
Los hamsters no pueden entrar a la misma si son menos de tres y el ingreso se tiene que hacer de a grupos de a tres. Lo mismo para salir.
Ademas, como el ingreso y la salida se hacen por el mismo lugar, para poder entrar hay que esperar que terminen de salir los que esten saliendo y lo mismo al reves.
SELECT
WHEN entrar'.count>=3 =>
ACCEPT entrar();
ACCEPT entrar();
ACCEPT entrar();
OR
WHEN salir'.count>=3 =>
ACCEPT salir();
ACCEPT salir();
ACCEPT salir();
Es decir, acepto el encuentro si hay al menos 3 procesos esperando por que lo acepten, y ahi si dar prioridad a los que cumplan antes la condicion.
Desde ya muchas gracias por cualquier aclaracion.
Saludos!.