Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integrantes:
Alberto Carrera
Maycol Pacha
Tutor:
SANGOLQUÍ-ECUADOR
CONTENIDO
1 ESTADOS DE LOS THREADS...................................................................................................................................4
1.1 NUEVO............................................................................................................................................................ 4
1.2 EJECUTABLE...................................................................................................................................................4
1.3 BLOQUEADO...................................................................................................................................................4
1.4 MUERTO............................................................................................................................................................4
2 EJERCICIO PRÁCTICO..................................................................................................................................................5
2.1 CREACIÓN DE BANCO JAVA:...............................................................................................................5
2.2 RESOLUCIÓN:.................................................................................................................................................5
3 CÓDIGO DEL PROGRAMA.........................................................................................................................................7
4 CONCLUSIONES............................................................................................................................................................8
5 REFERENCIAS.................................................................................................................................................................9
Figure 1 Estados de los Threads...................................................................................................4
Figure 2 Esquema gráfico Banco Java...........................................................................................5
Figure 3 Creación del proyecto Banco..........................................................................................5
Figure 4 Clase Principal BancoSinSincronizar...............................................................................5
Figure 5 Creación Clase Banco......................................................................................................6
Figure 6 Creación de Cuentas.......................................................................................................6
Figure 7 Creación Método trasferencias......................................................................................6
Figure 8 Desarrollo método trasferencia......................................................................................7
Figure 9 Impletenación del método getSaldoTotal()....................................................................7
1.1 NUEVO
Cuando un hilo está en este estado, es simplemente un objeto Thread vacío. El sistema
no ha destinado ningún recurso para él. Desde este estado solamente puede arrancarse
llamando al método start(), o detenerse definitivamente, llamando al método stop().
1.2 EJECUTABLE
La llamada al método start() creará los recursos del sistema necesarios para que el hilo
puede ejecutarse, lo incorpora a la lista de procesos disponibles para ejecución del
sistema y llama al método run() del hilo de ejecución.
Cuando el hilo se encuentra en este estado, todas las instrucciones de código que se
encuentren dentro del bloque declarado para el método run(), se ejecutarán
secuencialmente.
1.3 BLOQUEADO
El hilo de ejecución entra en estado Parado cuando alguien llama al método suspend(),
cuando se llama al método sleep(), cuando el hilo está bloqueado en un proceso de
entrada/salida o cuando el hilo utiliza su método wait() para esperar a que se cumpla
una determinada condición. Cuando ocurra cualquiera de las cuatro cosas anteriores, el
hilo estará Parado.
1.4 MUERTO
Un hilo que contenga a este método run(), morirá naturalmente después de que se
complete el bucle y run() concluya.
2 EJERCICIO PRÁCTICO
1.6 RESOLUCIÓN:
Creación de proyecto:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author mjpacha
*/
public class BancoSinSincronizar {
public static void main(String[] args){
}
}
class Banco{
public Banco(){
cuentas=new double[100];
for(int i=0;i<cuentas.length;i++){
cuentas[i]=2000;
}
}
System.out.println(Thread.currentThread());
cuentas[cuentaOrigen]-=cantidad;
System.out.printf("%10.2f de %d para %d",cantidad,cuentaOrigen,cuentaDestiono);
cuentas[cuentaDestiono]+=cantidad;
System.out.printf("Saldo total: %10.2f%n",getSaldoTotal());
}
4 CONCLUSIONES
Se concluye que cuando dos o más hilos necesitan acceder de manera simultánea a
un recurso de datos compartido necesitan asegurarse de que sólo uno de ellos accede
al mismo cada vez. Java proporciona un soporte único, a nivel de lenguaje, para
dichas tareas de sincronización.
5 REFERENCIAS
[1] Tomado de: “Curso Java. Threads IV”
Sincronización de Threads III
https://www.youtube.com/watch?v=XkNKQprHlMM