Laboratorio No 6
Java Monitors
Fecha entrega: Lunes, 7 de mayo, 2007
Fecha término: Lunes, 14 de mayo. 2007
Objetivos
- Introducir a los estudiantes en la construcción de aplicaciones multihebra en java utilizando primitivas de sincronización de alto nivel como monitores
Metodología
Trabajo en grupo de 2 personas. Se recomienda a los estudiantes desarrollar el algoritmo usando papel y lápiz y luego realizar la implementación usando el lenguaje de programación.
Descripción
Control de tráfico para el uso de un camino de una vía. Imagine el caso de los bandereros que regulan el tráfico cuando se están realizando arreglos en la vía. Los autos pueden circular por el camino en ambos sentidos por turnos. A lo más N autos pueden circular en un sentido. Luego, al salir del camino el n-ésimo auto el uso del camino debe cambiar de sentido permitiendo la circulación de N autos en el otro sentido. Si no existe ningún auto esperando en el sentido del turno que corresponde entonces, si hay autos esperando en el actual sentido, estos deben ser habilitados para el uso del camino. A continuación se presenta un esquema del sistema.
camino
Construya una aplicación que simule el sistema. Utilice un monitor para controlar el acceso de los autos al camino.
Evaluación
Algoritmo del monitor escrito y documentado en una página. (40 %)
Funcionamiento de la implementación que simula el sistema. (60 %)