Documentos de Académico
Documentos de Profesional
Documentos de Cultura
HILOS
Proceso ligero que no posee recursos propios, sino que los comparte con otros.
Proceso: Programa en ejecución.
Implementación de Hilos: Los hilos son proporcionados en forma de paquete, junto con operaciones para crear, destruir y
sincronizar.
Aplicaciones de los hilos:
– Paralelismo y ejecución concurrente de tareas u operaciones independientes.
– Implementación de interfaces de usuario interactivas.
– Operaciones I/O que no se bloquean.
– Comportamiento Asíncrono.
– Implementación de temporizadores y alarmas.
MECANISMOS DE HILAMIENTO JAVA:
Herencia: clase que hereda la clase Thread
Interfaz: Clase que implementa la interfaz Runnable
PROBLEMAS DE CONCURRENCIA:
- Compartir recursos: Alguien se apodera del recurso, Se toma como bueno un dato obsoleto, se borra un dato antes de
ser usado.
- Sincronización: Tareas que deben esperar el fin de otras, Tareas que deben esperar una condición.
METODO SINCRONIZED:
Todo el objeto queda bloqueado, de modo que otras llamadas a ese método o a otro deben esperar.
PRODUCTORES CONSUMIDORES:
Productor: proporcionan datos a una estructura de datos común.
Consumidor: usan los datos de la estructura para realizar diversas acciones.
PRIORIDAD EN HILOS:
A cada hilo se le asigna una prioridad, Los hilos tienen la misma prioridad por defecto de acuerdo con el SO, java permite el
cambio de prioridad (ThreadName.setPriority(int number)).
MECANISMOS
Cerrojo:
Lectores y escritores: Dos tipos de hilos que comparten la región crítica (RC). Unos q la consultan (lectores) y las que lo
modifican (escritores). Solo puede haber un escritor usando RC. Varios lectores pueden consultar la RC.
Semáforo: Mientras haya permiso el hilo puede acceder a la RC, si no debe esperar.
VIRTUALIZACIÓN
-Pretender que existen más unidades de procesamiento.
-Reemplazo de una interfaz existente de modo que imite
el comportamiento de otro sistema.