jueves, 15 de septiembre de 2016

Hilos en JAVA(Thread) - Crear y controlar

Hilos en JAVA(Thread) - Crear y controlar Listas de Hilos

Los hilos en java (Thread) son clases que nos permiten ejecutar múltiples procesos en segundo plano. 
Que quiere decir esto ? , Que mientras ejecutamos nuestro código, podemos ejecutar muchos otros a la vez sin esperar que el principal termine.

Los métodos importantes de esta clase son:

run: Donde se agrega todo el código del negocio.
start: Permite iniciar un hilo, se ejecuta todo el código que se encuentra dentro del método run.
isAlive: Permite saber si un hilo aun se esta ejecutando.
stop: Permite detener un hilo.

En este ejemplo, simulamos que cada persona tiene un proceso diferente, haremos que cada uno ejecute sus tareas al mismo tiempo, y controlaremos quien termina primero y ultimo.

Iniciaremos creando un paquete dentro de nuestro proyecto java.



Luego crearemos una clase llamada "Proceso"



La clase estará limpia.



Ahora haremos que la clase que herede de la clase Thread, y luego crearemos el método por defecto del hilo llamado "run".



Para nuestro ejemplo también crearemos una propiedad de tipo String llamada nombre.



Creamos los get y set de la propiedad nombre dando clik derecho fuera del run.




Seleccionamos la propiedad y damos en finish.



Debería quedarnos de esta manera.



Dentro del método run creamos un hilo de 1 segundo, que nos ayudara a simular un proceso de código, y debajo agregamos un print en consola que saldrá cuando el proceso por persona haya terminado.



Ahora creamos la clase Test y marcamos que sea de tipo main.




En la clase Test, instanciamos el hilo proceso para 3 personas y ejecutamos el start.



Como vemos, iniciamos 3 procesos a las vez, y el orden de finalización varia según el hilo.

También podemos probar, ejecutando una lista de personas.
Primero creamos una lista del tipo hilo Proceso y luego agregamos un objeto con diferente nombre de persona.


Segundo ejecutamos a todo los hilos dentro de la lista

Luego agregamos este código para poder controlar nuestra lista de hilos.



El resultado seria el siguiente.



Como apreciamos ahora podemos saber si un hilo se esta ejecutando o si ya termino de ejecutarse, todo esto es gracias al metodo llamado isAlive.

El código completo seria así.




Eso seria todo, cualquier pregunta o solicitudes de algún tutorial pueden hacerla en los comentarios, gracias.

No hay comentarios.:

Publicar un comentario