Please enable JavaScript.
Coggle requires JavaScript to display documents.
HILOS - Coggle Diagram
HILOS
ESTADOS
-
Dormido
Hilo bloqueado durante una cantidad determinada de tiempo,para posteriormente despertar
En ejecución
Hilo activo, con CPU asignada
Esperando
Hilo a la espera de un mensaje notify, una operación de E/S o de adquirir la propiedad de un método sincronizado.
Preparado
Hilo activo, a la espera de la asignación de CPU
Muerto
Hilo finalizado, pero sin recoger.
Nuevo
Es cuando un hilo se crea, pero aún no ha sido activado
DEMONIOS
No forma parte de la esencia del programa, más bien de la máquina de Java
-
Para crearlo, bastará con crear un hilo normal pero con el mensaje
setDaemon()
hilo.setDaemon(true);
Los hilos que se creen a partir del demonio, serán demonios también
-
DEFINICIÓN
-
-
Al crearse un proceso, el SO crea a su vez un primer hilo
-
Dentro de un SO convencional, cada proceso tiene:
-
-
EJECUCIÓN
public static void main(String[] args) {
ContadorAdelante cuenta = new ContadorAdelante("Contador A -");
ContadorAtras cuentaAtras = new ContadorAtras("Contador- ");
}
Al lanzar la ejecución del hilo principal, también lanzará los hilos "CuentaAdelante" y "CuentaAtras"
-
Aunque, main no regresará hasta que no terminen los subhilos
COMPOSICIÓN
Cada hilo:
-
-
-
-
Comparte el mismo espacio de direcciones, variables globales y conjunto de ficheros abiertos
-
CONTROL
Durante el ciclo de vida de un hilo, siempre transitará por los estados:
BLOQUEADO
Un hilo abandonará el estado de ejecución hasta que se le dé la ocurrencia que lo frena, esto es el estado de bloqueo
-
NUEVO
A un hilo que se está ejecutando, se le puede mandar el mensaje yield para pasar al estado preparado
Si no existe ningún hilo esperando, se permitirá que éste siga ejecutándose
DORMIDO
Un hilo dormido, es aquél que pasa tiempo sin hacer nada, lo que se traduce en un nulo uso del CPU
-
También se proporciona el método interrupt, cuando éste es recibido el hilo pasa a estar preparado otra vez
ESPERANDO
-
-
-
notifyAll es una variante de éste método, el cuál pasa a todos los hilos a estado preparado