Ejercicio Java
En este ejercicio, crearás un programa en Java que demuestre el uso de las clases **Thread** y **Runnable** para ejecutar múltiples hilos. Primero, implementarás una clase que implemente la interfaz **Runnable** y luego crearás un objeto **Thread** para ejecutar el código en paralelo. Después, usarás la clase **Thread** directamente para gestionar los hilos. A lo largo de este ejercicio, verás cómo ambas opciones permiten ejecutar código de manera concurrente, mejorando el rendimiento de tu aplicación.
Instrucciones:
- Crea una clase que implemente la interfaz
Runnable
y sobrescribe el método run()
para definir la tarea a ejecutar.
- Crea un objeto de la clase
Thread
pasando el objeto Runnable
como parámetro y llama al método start()
para ejecutar el hilo.
- Implementa otro hilo utilizando directamente la clase
Thread
y sobrescribe el método run()
para realizar la tarea.
- En el método principal, crea y ejecuta ambos hilos para demostrar su funcionamiento.
Este ejercicio te ayudará a comprender cómo manejar la concurrencia utilizando **Thread** y **Runnable**, dos de los métodos más comunes para trabajar con hilos en Java, lo que te permitirá realizar tareas de manera eficiente en aplicaciones concurrentes.
Ver código de ejemplo
// Clase que implementa Runnable
class MiTareaRunnable implements Runnable {
@Override
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println("Hilo Runnable: " + i);
try {
Thread.sleep(500); // Simula trabajo en el hilo
} catch (InterruptedException e) {
System.out.println(e.getMessage());
}
}
}
}
// Clase que extiende Thread
class MiHilo extends Thread {
@Override
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println("Hilo Thread: " + i);
try {
Thread.sleep(500); // Simula trabajo en el hilo
} catch (InterruptedException e) {
System.out.println(e.getMessage());
}
}
}
}
public class Main {
public static void main(String[] args) {
// Crear y ejecutar el hilo utilizando Runnable
MiTareaRunnable tareaRunnable = new MiTareaRunnable();
Thread hiloRunnable = new Thread(tareaRunnable);
hiloRunnable.start();
// Crear y ejecutar el hilo utilizando Thread
MiHilo hiloThread = new MiHilo();
hiloThread.start();
}
}
Salida:
Hilo Runnable: 1
Hilo Thread: 1
Hilo Runnable: 2
Hilo Thread: 2
Hilo Runnable: 3
Hilo Thread: 3
Hilo Runnable: 4
Hilo Thread: 4
Hilo Runnable: 5
Hilo Thread: 5
Este programa demuestra cómo crear y ejecutar hilos en Java utilizando tanto la clase Thread
como la interfaz Runnable
. El hilo creado mediante Runnable
y el hilo creado mediante la extensión de la clase Thread
ejecutan tareas simultáneamente, mostrando cómo trabajar con hilos para realizar tareas de manera concurrente en Java.