Sunteți pe pagina 1din 8

UNIDAD 4.

PROGRAMACIN
CONCURRENTE MULTI-HILO.

Java, es un lenguaje multihilo, ya que permite la


ejecucin de varias actividades en forma simultnea,
tanto en un programa creado en este lenguaje como en
el corazn mismo del lenguaje (en la parte interna).
Teniendo como resultado, que se pueden usar hilos Java
como standard, en cualquier plataforma.
En programacin, nos estamos refiriendo a los
lenguajes de programacin que permiten la ejecucin de
varias tareas en forma simultnea.

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.

Cuando creamos un hilo extendiendo la clase


Thread, se pueden heredar los mtodos y
variables de la clase padre. Si es as, una
misma subclase solamente puede extender o
drivar una vez la clase padre Thread. Esta
limitacin de Java puede ser superada a
travs de la implementacin de Runnable
que es una interfaz.

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 ( );

Start, es el mtodo oculto en el hilo cuya funcin es llamar al mtodo run.

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.

S-ar putea să vă placă și