Es un componente clásico de lenguajes de programación con control de concurrencia.
En terminología java, sería una clase tal que
— los campos son privados y sólo accesibles por métodos de acceso
— todos los métodos públicos están sincronizados (synchronized)
— Los threads que intentan acceder al monitor quedan bloqueados hasta que se les despierta (notify() o notifyAll())
Se puede decir que java generaliza el concepto de monitor al no imponer todas las condiciones mencionadas a la vez; es decir, se puede programar una clase como un monitor pero también se pueden programar clases de forma más flexible.
Ver “zonas de exclusión mutua”.
Temas relacionados