Está en la página 1de 8

INGENIERÍA EN SISTEMAS COMPUTACIONALES

-Reporte de Investigación-
Semestre y Grupo:

04-ISC

Asignatura:

TOPICOS AVANZADOS DE PROGRAMACION

Unidad:

III.- Programación concurrente (Multihilos).

Presenta:

226Z0261 – Daniel De Jesus Cortes Flores

Docente:

I.S.C. Jesús Daniel Castro Orea.

Tlalixcoyan, Ver. A 15 de Marzo del 2024.

1
Contenido
Introducción ............................................................................................................. 3

Reporte de Investigación sobre Hilos en Java ........................................................ 4

Conclusión:.............................................................................................................. 7

Bibliografía .............................................................................................................. 8

2
Introducción

En la programación en Java, los hilos (threads) son unidades de ejecución


independientes que permiten que un programa realice múltiples tareas
simultáneamente, lo que mejora la eficiencia y la capacidad de respuesta de una
aplicación.
En este informe, exploraremos las definiciones de hilos en Java, proporcionaremos
un ejemplo completo de código utilizado para crear una aplicación utilizando hilos y
discutiremos en qué parte de un proyecto podría integrarse esta integridad

3
Reporte de Investigación sobre Hilos en Java

Definiciones de Hilos en Java:


En Java, los hilos se implementan mediante la interfaz Runnable o extendiendo la
clase Thread. Los hilos creados utilizando la interfaz Runnable son más flexibles,
ya que permiten que la clase principal extienda otra clase si es necesario. Por otro
lado, los hilos que extienden la clase Thread son más simples de implementar.
Para crear y ejecutar un hilo en Java, se pueden seguir los siguientes pasos:
1. Implementar la interfaz Runnable o extender la clase Thread.
2. Sobrescribir el método run() para definir el comportamiento del hilo.
3. Crear una instancia del hilo y comenzar su ejecución utilizando el método
start().

Ejemplo Completo de Código:


A continuación, se muestra un ejemplo completo de un programa en Java que utiliza
hilos para realizar dos tareas simultáneamente: imprimir números pares e imprimir
números impares en consola.

public class Main {


public static void main(String[] args) {
// Crear instancias de las clases que implementan Runnable
Runnable evenTask = new EvenNumbersTask();
Runnable oddTask = new OddNumbersTask();

// Crear hilos y comenzar su ejecución


Thread evenThread = new Thread(evenTask);
Thread oddThread = new Thread(oddTask);

evenThread.start();
oddThread.start();
}
}

4
class EvenNumbersTask implements Runnable {
@Override
public void run() {
for (int i = 0; i <= 10; i += 2) {
System.out.println("Even: " + i);
try {
Thread.sleep(500); // Simular alguna tarea
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}

class OddNumbersTask implements Runnable {


@Override
public void run() {
for (int i = 1; i <= 10; i += 2) {
System.out.println("Odd: " + i);
try {
Thread.sleep(500); // Simular alguna tarea
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}

Este código crea dos hilos, uno para imprimir números pares y otro para imprimir
números impares. Cada hilo duerme durante 500 milisegundos entre impresiones
para simular alguna tarea.

5
Aplicación en un Proyecto:
La utilización de hilos en Java es beneficiosa en muchos tipos de aplicaciones, como
aplicaciones de servidor, aplicaciones de interfaz de usuario, procesamiento de
datos en segundo plano, etc. En un proyecto, los hilos pueden ser útiles para tareas
que requieren operaciones simultáneas o para mejorar la capacidad de respuesta
de la aplicación.
Por ejemplo, en una aplicación de chat, se podría utilizar un hilo para recibir
mensajes del servidor mientras otro hilo actualiza la interfaz de usuario con nuevos
mensajes entrantes. De esta manera, la aplicación podría seguir siendo receptiva
mientras se realizan tareas de red en segundo plano. Además, en aplicaciones que
realizan operaciones intensivas en términos de cálculos o procesamiento de datos,
se pueden utilizar hilos para distribuir la carga de trabajo y mejorar el rendimiento
general de la aplicación.

6
Conclusión:

En resumen, los hilos en Java son una herramienta poderosa para mejorar la
eficiencia y la capacidad de respuesta de las aplicaciones al permitir la ejecución
simultánea de múltiples tareas. Al comprender las definiciones de hilos en Java y
cómo implementarlos en un proyecto, los desarrolladores pueden aprovechar esta
funcionalidad para crear aplicaciones más robustas y eficientes.

7
Bibliografía

Brian Goetz, T. P. (s.f.). Java Concurrency in Practice.

También podría gustarte