Threads

Solo disponible en BuenasTareas
  • Páginas : 3 (531 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de enero de 2011
Leer documento completo
Vista previa del texto
THREADS

Un hilo es una secuencia de código en ejecución dentro del contexto de un proceso. Los Hilos no pueden ejecutarse ellos solos; requieren la supervisión de un proceso padre para correr.Dentro de cada proceso hay varios hilos ejecutándose.
La clase Thread es la clase responsable de producir hilos funcionales para otras clases. Para añadir la funcionalidad de hilo a una clasesimplemente se deriva la clase de Thread y se Ignora el método run. Es en este método run donde el procesamiento de un hilo toma lugar, y a menudo se refieren a él como el cuerpo del hilo. La clase Threadtambién define los Métodos start y stop, los cuales te permiten comenzar y parar la ejecución del hilo, Además de un gran número de métodos útiles.
Los hilos a menudo son conocidos o llamados procesosligeros. Un hilo, en efecto, es muy similar a un proceso pero con la diferencia de que un hilo siempre corre dentro del contexto de otro programa. Por el contrario, los procesos mantienen su propioespacio de direcciones y entorno de operaciones. Los hilos dependen de un programa padre en lo que se refiere a Recursos de ejecución.

VENTAJAS
En Java, los hilos comparten el mismo espacio dememoria. Incluso comparten gran parte del entorno de ejecución, de modo que la creación de nuevos hilos es mucho más rápida que la creación de nuevos procesos. La ventaja que proporcionan los hilos es lacapacidad de tener más de un camino de ejecución en un mismo programa. Así, con un único proceso, ejecutándose una JVM (Java Virtual Machine), habrá siempre más de un hilo, cada uno con su propiocamino de ejecución.

Ejemplo: carrera de hilos
En el siguiente ejemplo, mostramos la ejecución de dos hilos con diferentes prioridades. Un hilo se ejecuta a prioridad más baja que el otro. Los hilosincrementarán sus contadores hasta que el hilo que tiene prioridad más alta alcance al contador que corresponde a la tarea con ejecución más lenta.
import Java.awt.*;
import Java.applet.Applet;
//...
tracking img