Multitarea e Hilos en Java Con Ejemplos
Multitarea e Hilos en Java Con Ejemplos
En esta entrada vamos a poner un ejemplo para que veáis las ventajas
de la multitarea, viendo como se ejecutaría un programa sin utilizar la multitarea
y otro utilizándola.
Clase "Cajera.java":
"seg");
this.esperarXsegundos(cliente.getCarroCompra()[i]);
"seg");
}
(System.currentTimeMillis() - timeStamp) /
1000 + "seg");
try {
Thread.sleep(segundos * 1000);
Thread.currentThread().interrupt();
Clase "Cliente.java":
Clase "Main.java":
cajera2.procesarCompra(cliente2, initialTime);
@Override
+ (System.currentTimeMillis() -
this.initialTime) / 1000
+ "seg");
this.esperarXsegundos(cliente.getCarroCompra()[i]);
+ (System.currentTimeMillis() - this.initialTime) /
1000
+ "seg");
+ this.cliente.getNombre()
+ " EN EL TIEMPO: "
+
(System.currentTimeMillis() - this.initialTime) / 1000
+ "seg");
try {
Thread.sleep(segundos * 1000);
Thread.currentThread().interrupt();
}
}
cajera1.start();
cajera2.start();
this.cliente = cliente;
this.initialTime = initialTime;
new Thread(proceso1).start();
new Thread(proceso2).start();
@Override
CONCLUSIONES Y ACLARACIONES:
El concepto de multitarea o multiprocesamiento es bastante sencillo de
entender ya que solo consiste en hacer varias cosas a la vez sin que se vea
alterado el resultado final. Como ya se ha dicho en la entrada no todo se puede
paralelizar y en muchas ocasiones suele ser complicado encontrar la manera de
paralelizar procesos dentro de una aplicación sin que esta afecte al resultado de
la misma, por tanto aunque el concepto sea fácil de entender el aplicarlo a un
caso práctico puede ser complicado para que el resultado de la aplicación no se
vea afectado.
Por otro lado para los que empecéis a ver estos temas de la
concurrencia, multitarea y demás, no so preocupéis al principio si os cuesta
programar problemas de este tipo ya que a parte de la multitarea se mezclan
cosas como la herencia y las Interfaces que al principio son cosas que cuestan
de asimilar, así que ir poco a poco pero tener muy claro que la multitarea es muy
util y se ha de aplicar para hacer las aplicaciones más eficientes y que den mejor
rendimiento.