Package uni.robot.base
Class SyncInstructionManager
java.lang.Object
uni.robot.base.SyncInstructionManager
Objeto que es capaz de sincronizar el paso de mensajes de hilos, uno o mas productores y un consumidor.
Cuando un hilo productor manda un mensaje a traves de este objeto, el mensaje es agregado a una fila y el hilo
es pausado, hasta que el hilo consumidor procese y mande una respuesta.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Marca como teminado y remueve el primer mensaje de la fila, desbloqueando el hilo consumidor y mandando una respuesta.void
finishInstruction
(Object message) Marca como teminado y remueve el primer mensaje de la fila, desbloqueando el hilo consumidor y mandando una respuesta.Metodo exclusivo para el hilo consumidor.sendInstruction
(Object message) Metodo escluivo para el hilo productor.
-
Constructor Details
-
SyncInstructionManager
public SyncInstructionManager()
-
-
Method Details
-
sendInstruction
Metodo escluivo para el hilo productor. Pone un mensaje en la fila y bloquea hasta que un hilo consumidor mande una respuesta.El mensaje no puede ser null.
- Parameters:
message
- El mensaje a mandar- Returns:
- La respuesta del hilo consumidor
-
readInstruction
Metodo exclusivo para el hilo consumidor. Lee el primer mensaje de la fila,- Returns:
- El primer mensaje de la fila,
-
finishInstruction
Marca como teminado y remueve el primer mensaje de la fila, desbloqueando el hilo consumidor y mandando una respuesta.- Parameters:
message
- la respuesta a mandar
-
finishInstruction
public void finishInstruction()Marca como teminado y remueve el primer mensaje de la fila, desbloqueando el hilo consumidor y mandando una respuesta.
-