Vous êtes sur la page 1sur 2

Programacin en Ada

Tareas
Sincronizacin mediante citas
De Wikilibros, la coleccin de libros de texto de contenido libre.
Programacin en Ada/Tareas/Sincronizacin mediante citas
Tareas
Sincronizacin
mediante citas
Tareas/Aceptacin de
citas
Sincronizacin de tareas mediante puntos de entrada o citas
(entry)
Frecuentemente, las tareas interaccionan entre s y necesitan un mecanismo para
comunicarse y sincronizarse, este mecanismo que ofrece Ada se conoce como la
cita (rendezvous) o punto de entrada a la tarea.La cita entre dos tareas se
produce como consecuencia de la llamada de una tarea a un punto de entrada
declarado en otra tarea.
Los puntos de entrada se declaran en la especicacin de la tarea, por ejemplo:
task Tarea is
entry Entrada (N: Integer);
end Tarea;
Un punto de entrada se asemeja a un procedimiento. Los parmetros que admiten
son de modo in, out o in out, por defecto, se sobreentiende in. Para invocar a un
punto de entrada, se procede de igual manera que en un procedimiento, por
ejemplo:
T: Tarea;
-- ...
T.Entrada (8);
Ntese que se debe emplear la notacin punto siempre que se realice la llamada
fuera de la misma tarea pues una tarea no puede aparecer en una clusula use.
Realizar una llamada a un punto de entrada propio desde la misma tarea est
permitido sintcticamente, pero resulta ilgico, pues producira un interbloqueo
consigo misma.
Programacin en Ada/Tareas/Sincronizacin medi... http://es.wikibooks.org/wiki/Programacin_en_Ad...
1 de 2 13/05/14 01:44
Tambin se pueden denir varios puntos de entrada simultneamente, por
ejemplo:
type TNivel is Integer range 1..10;
task Controlador is
-- Se define un punto de entrada por cada nivel.
entry Aviso (TNivel) (Elem: TElemento);
end Controlador;
Y se podra llamar a un punto de entrada de los 10 denidos como, por ejemplo:
ProcesoColtrol: Controlador;
-- ...
ProcesoControl.Aviso (3) (1773);
Con ello, se llama al punto de entrada Aviso con el nivel 3 y parmetro 1173.
Las acciones que se llevan a cabo al aceptar una cita se especican mediante la
sentencia accept, tal y como se explica en el apartado siguiente.
Manual de referencia de Ada
9.5.2 Entries and Accept Statements (http://www.adaic.com/standards/95lrm
/html/RM-9-5-2.html)
Obtenido de http://es.wikibooks.org/w/index.php?title=Programacin_en_Ada
/Tareas/Sincronizacin_mediante_citas&oldid=165447
Categora: Programacin en Ada
Esta pgina fue modicada por ltima vez el 18 ene 2011, a las 15:22.
El texto est disponible bajo la Licencia Creative Commons
Atribucin/Compartir-Igual 3.0; pueden aplicarse trminos adicionales. Vase
Trminos de uso para ms detalles.
Programacin en Ada/Tareas/Sincronizacin medi... http://es.wikibooks.org/wiki/Programacin_en_Ad...
2 de 2 13/05/14 01:44

Vous aimerez peut-être aussi