Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


dad1:hilos

DAD-1: Hilos

Definición

Un Hilo es la secuencia única de control de flujo dentro del programa. Suele ser la unidad de código más pequeña que se puede ejecutar.

Un hilo se puede implementar heredando la clase Thread o implementando la interfaz run().

Heredando Clase Thread

Por ejemplo, este hilo que vamos a implementar lo que hará será que cada vez que sea llamando repetir múltiples veces algo con cierto retraso entre ejecución.

public class SimpleThread extends Thread{
  
  //Atributos:
  protected long retraso;
  protected int veces;
  
  
  //constructor del hilo, indicamos cuantas veces se repite y cada cuanto
  public SimpleThread (long retraso, int veces){

  
    System.out.println("Constructor del Hilo Simple");
    this.retraso = retraso;
    this.veces = veces; 
  }
  
  //Definimos que hará el hilo durante su ejecución:
  public void run(){
    try{
      for(int i = veces; veces >= 0; veces--){
        System.out.println("Cooldown de: " + retraso);
        sleep(retraso);
      }
      
      System.out.println("Fin de la ejecucion del hilo")
      
    }catch(Exception e){
      System.out.println("Error en el Hilo: " + e);
    }
  
  }
  
  
  
}

OJO: Para ejecutar el hilo usamos .start(), no .run().

En la práctica

Un hilo es una unidad única de control, para implementar un hilo necesitamos un objeto de la clase thread.

El Programa que queremos crear deberá poder arrancar y parar hilos, de forma que podamos seleccionar el hilo a arrancar con un JComboBox y muestre en un log como van los hilos dentro de un JTextArea

Declaración de Hilos

Ejemplo de Funcionalidad Botón Lanzar Hilo

Ejemplo de Funcionalidad Botón Parar Hilo

Ejemplo de Funcionalidad ComboBox

NombreHilos sería:

dad1/hilos.txt · Última modificación: 2023/11/16 07:53 por thejuanvisu