Programación Con Hilos En Java
Enviado por pepeolmox • 19 de Marzo de 2012 • 546 Palabras (3 Páginas) • 1.964 Visitas
ENSAYO SOBRE HILOS EN JAVA Y PROGRAMA PARA ALTERNAR 2 COLORES CON HILOS.
ELABORADO PARA EL SENA COLOMBIA
POR: PEPEOLMOX
¿Qué es un hilo?
Un hilo es un flujo secuencial de instrucciones que está dentro de un proceso.
Un hilo es también conocido como proceso ligero.
Un hilo en Java es una instancia de la clase java.lang.Thread
Los hilos son uno de los recursos más importantes en programación para realizar varias tareas
de forma simultánea.
Los hilos de un mismo proceso comparten casi todo: ficheros abiertos, espacio de memoria, información de protección, temporizadores, señales, etc. Pero al mismo tiempo, cada hilo tiene también su parte privada: su propia pila, su propio contador de programa y su propio estado.
¿Qué diferencia existe entre multihilo y multiproceso?
En multiproceso:
-2 o más programas independientes se ejecutan en forma paralela.
-cada programa tiene su propio espacio de memoria, su propio conjunto de variables, sus propios recursos.
-el control lo tiene el sistema operativo, y el programador no tiene ninguna ingerencia.
En multihilo:
-2 o más tareas se ejecutan en forma paralela pero dentro de un programa (proceso).
-Todas las tareas comparten los recursos del programa.
-el control lo tiene el programa, y es responsabilidad del programador controlar el acceso a los recursos.
¿Cuáles son las ventajas que ofrece la programación con hilos?
Puedes dejar ejecutando tareas en el fondo.
Evitas el bloqueo de un programa.
Incrementas la velocidad de ejecución.
Puedes hacer programas mucho más adecuados.
La programación es mucho más estructurada y fácil.
Porque La programación multihilo:
permite escribir programas más eficientes ya que optimizan los recursos de la Unidad Central de Proceso (CPU).
Permite acceder a los recursos de tiempo libre (tiempos muertos) de la CPU, mientras se realizan otras tareas.
Permite que estos tiempos desaprovechados sean utilizados por el programador para realizar determinadas tareas, y así aprovechar el microprocesador durante toda la ejecución del programa.
Consigue ejecutar varios subprocesos en paralelo, de forma que cuando uno de ellos esté esperando algún evento, permita que el microprocesador ejecute alguno de los otros hilos en espera.
//PROGRAMA PARA ALTERNAR DOS COLORES.
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
// <applet width="400" height="200" code="AppletSinhilos"></applet>
public class AppletSinhilos extends Applet implements ActionListener{
...