Calidad

Páginas: 5 (1232 palabras) Publicado: 16 de abril de 2012
Por tales razones, la concurrencia es un fenómeno importante de tratar, ya que
permite el desarrollo de sistemas capaces de adelantar, múltiples procesos
simultáneamente. A su vez cada proceso se puede componer de múltiples
Programación de Hilos: Introducción 12 - 2
tareas, ejecutándose según ciertas reglas, de manera simultánea. Debe
entenderse que, se hace referencia a procesos en elsentido de programas, y
dentro de cualquier programa, la posibilidad de manejar, concurrentemente,
múltiples tareas.
multitareas o multithreads
Flujo único: un programa de flujo único (single-Thread) utiliza un solo
hilo para controlar su ejecución. Por defecto, cualquier programa applet o
aplicación Java, tiene un hilo denominado principal (Thread).
Flujo múltiple: un programa de flujo múltipleo multitarea, utiliza varios
contextos de ejecución para realizar su trabajo. Cada tarea se inicia y
termina tan pronto como sea posible, lo cual es una facilidad para la
entrada de datos en sistemas en tiempo real, especialmente si estos son de
diferentes fuentes. En este caso, se dice que ademas del hilo principal del
programa en ejección, este tiene otros hilos, o tareas parelas enejecución.

Un hilo puede detenerse sin afectar las otras partes del programa. Por ejemplo
en un hilo de animación, se hace que los bucles de la animación se detengan
durante un tiempo, un segundo, sin hacer que se pare el resto del programa.
Cuando un hilo se detiene o se bloquea, sólo el se detiene y los demás
continúan con su ejecución.
Ciclo de vida de un hilo
Un hilo tiene un ciclo de vidaque va desde su creación hsta su terminación.
Durante su ciclo de vida cada uno de los hilos o tareas de una aplicación puede
estar en diferentes estados, algunos de los cuales se indican a continuación:
• Nacido: Cuando se acaba de crear un hilo, se dice que está nacido, y
continúa en ese estado hasta que se invoca el método start() del hilo. La
siguiente sentencia crea un nuevo thread perono lo arranca, por lo tanto
deja el thread en el estado de nacido.
Thread miHilo = new MiClaseThread();
Cuando un thread está en este estado, es sólo un objeto Thread vacío o
nulo. No se han asignado recursos del sistema todavía para el thread. Así,
cuando un thread está en este estado, lo único que se puede hacer es
arrancarlo con start().
• Listo: Cuando se invoca el método start() delhilo, se dice que está en
estado listo. El método se arranca con la siguiente instrucción, para el caso
del hilo miHilo:
miHilo.start();
• Ejecutable: cuando el método start() se ejecuta, crea los recursos del
sistema necesarios para ejecutar el thread, programa el thread para ejecutarse, y llama al método run() del thread que se ejecuta en forma
secuencial. En este punto el thread está en elestado ejecutable. Se
denomina así puesto que todavía no ha empezado a ejecutarse.
• En ejecución: Un hilo en estado de listo de la más alta prioridad, pasa al
estado de ejecución, cuando se le asignan los recursos de un procesador, o
sea cuando inicia su ejecución. Aquí el thread está en ejecución.Cada hilo
tiene su prioridad, hilos con alta prioridad se ejecutan preferencialmente
sobrelos hilos de baja prioridad.
• No ejecutable :Un hilo continúa la ejecución de su método run(), hasta
que pasa al estado de no ejecutable originado cuando ocurre alguno de los
siguientes cuatro eventos:
Se invoca a su método sleep().
Se invoca a su su método suspend().
El thread utiliza su método wait() para esperar una condición variable.
El thread está bloqueado durante una solicitud deentrada/salida.
Por ejemplo, en el siguiente fragmento de codigo se pone a dormir
miHilo durante 10 segundos (10.000 milisegundos):
Thread miHilo = new MiClaseThread();
miHilo.start();
try {
miHilo.sleep(10000);
} catch (InterruptedException e){
}
Si se ha puesto a dormir un hilo, deben pasar el número de milisegundos
especificados en sleep().
Si se ha suspendido un hilo, se debe llamar...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Calidad
  • Calidad
  • Calidad
  • Calidad
  • Calidad
  • Calidad
  • Calidad
  • Calidad

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS