Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PROGRAMACIN
CONCURRENTE MULTI-HILO.
CONCEPTO DE HILO.
Los hilos o threads, son bsicamente, pequeos procesos o piezas
independientes de un gran proceso. Tambin podemos decir, que
un hilo es un flujo nico de ejecucin dentro de un proceso (un
proceso es un programa ejecutndose dentro de su propio espacio
de direcciones).
ATRIBUTOS DE HILOS.
Los atributos o propiedades de un hilo varan de una implementacin a otra. Sin
embargo, deforma general los atributos que definen un thread son:
Estado de espera:permite que otros hilos, esperen hasta que termine de ejecutarse
un hilo en especial.
Direccin de stack.apuntador al inicio del stock del hilo.
Tamao de la direccin:longitud del stock del hilo.
Alcance (scope):define quien controla la ejecucin del hilo: el proceso o el ncleo del
sistema operativo.
Herencia: los parmetros de calendarizacin son heredados o definidos localmente.
Poltica de calendarizacin:se define que proceso se va a ejecutar y en qu instante.
Prioridad:un valor de prioridad alto corresponde a una mayor prioridad.
CREACIN DE HILOS.
En Java, existen dos mecanismo que nos permiten la creacin de hilos:
Implementando la interfazRunnable
Extendiendo la claseThread, es decir, creando una subclase de sta.
En cualquiera de los dos casos, se debedefinir un mtodo runque
ser el que incluya las instrucciones que se ejecutarn en el thread (hilo) y
se pueden definir prioridades aunque no se puede confiar en que la
mquina virtual escoja para ejecutar, siempre, el de mayor prioridad, por
lo que no se pueden utilizar para basar en ellas el scheduler de un sistema
en tiempo real.
ARRANQUEDE HILOS.
Como se pudo apreciar en los ejemplos anteriores, el arranque de un hilo
debe realizarse dentro delmtodo principal de Java, que como todos
sabemos, es elmtodo main. Y lo arrancamos llamando al mtodo start.
r1.start ( );
MANIPULACINDE
HILOS.
Una vez que realizamos la creacin de un hilo, ste debe contener una traza
de ejecucin vlida, la cual controlaremos en el mtodo run del objeto.
El cuerpo de sta funcin (las acciones del hilo), vienen a ser el cuerpo del
programa. Es como referirnos a la rutina main pero a nivel del hilo. Es decir,
todas las acciones que nos interesa que nuestro hilo realice, deben estar
especificadas en el mtodo run. Al terminar de ejecutarse el mtodo run,
tambin terminar la ejecucin de nuestros hilos.
Por lo anterior, la manipulacin de nuestro hilos, se realiza dentro del
mtodo run.