Vous êtes sur la page 1sur 9

TEMA

HILOS

TOPICOS AVANZADOS DE PROGRAMACIN


Hilo (theread) llamado tambin proceso ligero o subproceso, es la unidad
de ejecucin de un proceso y esta asociado con una secuencia de
instrucciones un conjunto de registros y una pila. Cuando se crea un proceso el
S.O crea su primer hilo (hilo primario) en la cual puede, a su vez, crear hilos
adicionales. esto pone de manifiesto que un proceso no ejecuta, si no que es
slo el espacio de direcciones donde reside el cdigo que es ejecutado
mediante uno o ms hilos.
1234567891011121131415161718192021----- 4454647494950

51525354555657585960616263646566676869----9596979899100
start()

Este mtodo indica al intrprete que cree un


contexto del hilo del sistema y comience a
ejecutarlo.
A continuacin, el mtodo run() de este hilo ser
invocado en el nuevo contexto del hilo. Hay que
tener precaucin de no llamar al mtodo start()
ms de una vez sobre un hilo determinado.
run()

El mtodo run() constituye el cuerpo de un hilo


en ejecucin. Este es el nico mtodo del
interfaz Runnable.
Es llamado por el mtodo start() despus de
que el hilo apropiado del sistema se haya
inicializado. Siempre que el mtodo run()
devuelva el control, el hilo actual se detendr.
sleep(long)

El mtodo sleep() provoca que el intrprete


ponga al hilo en curso a dormir durante el
nmero de milisegundos que se indiquen en
el parmetro de invocacin. Una vez
transcurridos esos milisegundos, dicho hilo
volver a estar disponible para su ejecucin.
stop()

Este mtodo provoca que el hilo se detenga de


manera inmediata. A menudo constituye una
manera brusca de detener un hilo, especialmente
si este mtodo se ejecuta sobre el hilo en curso.
En tal caso, la lnea inmediatamente posterior a la
llamada al mtodo stop() no llega a ejecutarse
jams, pues el contexto del hilo
muere antes de que stop() devuelva el control. Una
forma ms elegante de detener un hilo es utilizar
alguna variable que ocasione que el mtodo run()
termine de manera ordenada. En realidad, nunca
se debera recurrir al uso de este mtodo.
Igual que los procesos con un solo hilo de control, los hilos pueden
encontrarse en unos de los siguientes estados.
NUEVO.- El hilo ha sido creado pero aun no ha sido activado. Cuando se active
pasar al estado preparado.
PREPARADO.- El hilo est activado y le ha sido asignada la UCP.
EN EJECUCIN.- El hilo est activo y le ha sido asignada la UCP(solo hilo
activos preparados solo pueden ser ejecutados).
BLOQUEADO.- El hilo espera que otro elimine el bloqueo de un hilo bloqueado.
DORMIDO. -El hilo est bloqueado durante una cantidad de tiempo
determinada despus de la cual despertar y pasar al estado preparado.
ESPERANDO.-El hilo est esperando que ocurra alguna cosa:unacondicion,una
operacin de E/S o adquirir la propiedad de un objeto sincronismo.Cuando
ocurra, pasar al estado preparado.
MUERTO.-El hilo ha finalizado (est muerto) pero todava no ha sido recogido
por su padre.Los hilos muertos no pueden alcanzar ningn otro estado.

Vous aimerez peut-être aussi