Cuando en un ejercicio de cocurrencia con monitores dicen que un procedimiento auxiliar lo invoca cierto procedimiento X, esta bien poner ese procedimiento auxiliar adentro del monitor? o tiene que ejecutarse siempre desde el proc. X?
Gracias
Cuando en un ejercicio de cocurrencia con monitores dicen que un procedimiento auxiliar lo invoca cierto procedimiento X, esta bien poner ese procedimiento auxiliar adentro del monitor? o tiene que ejecutarse siempre desde el proc. X?
Gracias
Normalmente lo que decimos en un ejercicio de concurrencia es quién (tarea) puede ejecutar cierto procedimiento. Por ejemplo podemos decir "el Cliente puede ejecutar la función pagar(...)"
Eso quiere decir que quien debe ejecutar ese procedimiento/función es el proceso asociado a dicha entidad (Cliente en el caso del ejemplo). La llamada puede hacerse desde cualquier lado (incluyendo dentro de un monitor) siempre y cuando el proceso asociado sea el indicado en la letra (Cliente en el ejemplo).
Lo que tenes que tener en cuenta al poner la llamada dentro del monitor es que mientras se ejecuta el procedimiento el monitor seguirá tomado por el proceso que obtuvo el monitor, y eso puede impactar en la correctitud de la solución.
Saludos,
Gustavo