Instrucciones Actividad 4
Instrucciones Actividad 4
Instrucciones Actividad 4
docx
1. Ejecutar netbeans
2. File – new Project – Java – Javaapplication – Actividad2(Ejercicio2)
3. Clic derecho en el programa – new – java package – actividad
4. Clic derecho en el paquete – new – Java Class– Ejercicio2
5. Agregaremos el siguiente código:
Explicación:
1. Los atributos estáticos comparten valores en toda la clase
2. La variable al finalizar los hilos debería ser 100 * 100 = 10000
3. El valor de cont se acercará a 10000 pero nunca será ese valor debido a que existe
indeterminismo
4. El indeterminismo consiste en que cuando dos o más hilos escriben a la vez en una
variable compartida, el valor de esta variable es indeterminado, esto ocurre porque los
hilos no se ejecutan de inmediato
5. Se recomienda cambiar los valores de 100 a 1000 o 10000 para identificar con mayor
facilidad el indeterminismo
6. Ejecutaremos el hilo principal al final, estor se realiza agregando el siguiente código en el
método main:
Explicación:
1. Con el método join() hemos hecho que todos los hilos se ejecuten uno tras otro y el hilo
principal sea el último en ejecutarse
2. Sin embargo, sigue existiendo indeterminismo, en donde nosotros identificamos que
existe indeterminismo (en nuestro caso en la variable cont) se le conoce como sección
critica, esta sección se puede resolver mediante la exclusión mutua
i= 0 1 2 3 4 5 6 7 8
Vector= 1 2 3 4 5 6 7 8
Hilo 1 Hilo 1 y 2 Hilo 2
11. Para ello realizaremos la siguiente modificacion a uestro codigo:
Explicación:
1. Creamos dos variables que controlen el inicio y fin de cada hilo (como lo indica la tabla
anterior), además del contructor para poder inicializar las variables
2. El ciclo for de método run() lo modificamos con inicio y fin
3. Inicializamos los constructores en 0 y 4 para el primer hilo y 4 y 8 para el segundo hilo