
son segmentos de código de un programa
que se ejecutan secuencialmente de modo
independiente de las otras partes del
programa
La principal utilización de hilos en un programa es para el
aislamiento y sincronización de tareas. La clase Thread
desciende de Object e implementa la interface Runnable
y no es necesario importarlas a nuestro programa ya que
se encuentran dentro del paquete java.lang


Creando una clase que herede de la clase
Thread y sobrecargando el método run().
Implementando la interface Runnable, y
declarar el método run().


Para poder hacer que se ejecute un thread de
la clase SimpleThread, primero se debe crear
una instancia de dicha clase y llamar al
método start(), tal método se encarga de
llamar al método run(). Para el ejemplo
anterior, el código sería:
SimpleThread miThread = new
SimpleThread("Hilo de Prueba").start();
Thread(String), Thread()
Thread(Runnable)
Thread(Runnable, String)
Thread(ThreadGroup, String)
Thread(ThreadGroup, Runnable)
Crea un nuevo thread con o sin
nombre
Crea un nuevo thread pasándole
una referencia a un objeto que
implementa Runnable.
Igual que el anterior, pero con un
nombre
Análogos a los anteriores, pero
creando el thread
dentro del ThreadGroup
especificado
Thread currentThread()
int activeCount()
String getName(), setName(String)
ThreadGroup getThreadGroup()
boolean isAlive()
start(), run()
int getPriority(), setPriority(int)
sleep(long), sleep(long, int)
Devuelve una referencia al thread
actual.
Devuelve el número de threads
activos en el grupo.
Obtiene o establece el nombre de
un thread
Obtiene el grupo al que pertenece el
thread.
Indica si el thread está vivo o no.
Arranca el thread y ejecuta su
principal cometido
Obtiene o establece la prioridad del
thread
Duerme el thread un tiempo
especificado


tiene la función de hacer que un hilo que se
está ejecutando de regreso al estado en
ejecución(runnable) para permitir que otros
hilos de la misma prioridad puedan
ejecutarse.
El método yield() nunca causará que un hilo
pase a estado de espera/bloqueado/dormido,
simplemente pasa de ejecutándose(running) a
en ejecución(runnable).
EJEMPLOS…

El Timer es un temporizador que nos permite
ejecutar instrucciones de código, rutinas,
funciones etc..., cada cierto intervalo de
tiempo.




La clase Timer dispara uno o más ActionEvent
después de un retardo especificado. Los
temporizadores son útiles en las siguientes
situaciones.
Hacer algo después de un retardo. Por
ejemplo, muchos componentes Swing, como
los botones, usan un temporizador para
determinar cuando mostrar un tool-tip.
Mostrar progresos periódicamente
Realizar animaciones
Timer(int, ActionListener)
Crea un timer inicializado
con un retardo y un
oyente. Este es el único
constructor de Timer.
void setDelay(int) int
getDelay()
Selecciona u obtiene el
retardo entre disparos.
void setInitialDelay(int) int
getInitialDelay()
Selecciona u obtiene el
retardo para el disparo
inicial
void setRepeats(boolean)
boolean isRepeats()
Selecciona u obtiene si el
timer se repite
void setCoalesce(boolean)
boolean isCoalesce()
Selecciona u obtiene su el
timer junta varios disparos
pendientes en un único
disparo.
void start()
void restart()
Activa el timer. restart
cancela cualquier disparo
pendiente.
void stop()
Desactiva el timer
boolean isRunning()
Obtiene si el timer se está
ejecutando.
void
addActionListener(ActionLi
stener)
Añade o elimina el oyente
de action
void
removeActionListener(Acti
onListener)
Añade o elimina el oyente
de action
EJEMPLO…
Descargar

HILOS - Programación Orientada a Objetos 2