Knoppia

Wiki de Informática y otras historias

Herramientas de usuario

Herramientas del sitio


dad1:hilos

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
dad1:hilos [2023/11/09 09:49] thejuanvisudad1:hilos [2023/11/16 07:53] (actual) – [Heredando Clase Thread] thejuanvisu
Línea 1: Línea 1:
 ====== DAD-1: 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.
 +<code>
 +
 +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);
 +    }
 +  
 +  }
 +  
 +  
 +  
 +}
 +
 +</code>
 +
 +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. Un hilo es una unidad única de control, para implementar un hilo necesitamos un objeto de la clase thread.
  
dad1/hilos.1699523356.txt.gz · Última modificación: 2023/11/09 09:49 por thejuanvisu