PSP02.- Programación multihilo.
Orientaciones para el alumnado
En esta segunda unidad de trabajo del módulo, verás los conceptos relacionados con la programación multihilo, así cómo las clases y librerías o bibliotecas que permiten trabajar con hilos en Java.
También verás como sincronizar y comunicar hilos que comparten recursos, utilizando la clase java.lang.Object
y clases del paquete java.util.concurrent.
Por último verás otras utilidades de concurrencia incluidas en el paquete java.util.concurrent
y la importancia de documentar y depurar las aplicaciones multihilo.
Datos generales de la Unidad de Trabajo
Nombre completo del MP
|
Programación de servicos y procesos. |
Siglas MP
|
PSP |
Nº y título de la UT |
02.- Programación multihilo. |
Índice o tabla de contenidos
|
La unidad de trabajo contiene los siguientes bloques de contenidos:
- Introducción.
- Conceptos sobre hilos.
- Recursos compartidos por los hilos.
- Ventajas y uso de hilos.
- Multihilo en Java. Librerías y clases.
- Utilidades de concurrencia del paquete
java.lang.
- Utilidades de concurrencia del paquete
java.util.concurrent.
- Creación de hilos.
- Creación de hilos extendiendo la clase Thread.
- Creación de hilos mediante la interfaz Runnable.
- Estados de un hilo.
- Iniciar un hilo.
- Detener temporalmente un hilo.
- Finalizar un hilo.
- Ejemplo. Dormir un hilo con sleep.
- Gestión y planificación de hilos.
- Prioridad de hilos.
- Hilos egoístas y programación expulsora.
- Sincronización y comunicación de hilos.
- Información compartida entre hilos.
- Monitores. Métodos synchronized.
- Monitores. Segmentos de código synchronized.
- Comunicación entre hilos con métodos de
java.lang.Object.
- El problema del interbloqueo (deadlock).
- La clase Semaphore.
- La clase Exchanger.
- Las clase CountDownLatch.
- La clase CyclicBarrier.
- Aplicaciones multihilo.
- Otras utilidades de concurrencia.
- La interfaz Executor y los pools de hilos.
- Gestión de excepciones.
- Depuración y documentación.
|
Objetivos
|
- Desarrollar aplicaciones compuestas por varios hilos de ejecución analizando y aplicando librerías específicas del lenguaje de programación.
- Conocer la programación multihilo en Java.
- Aplicar las características de la sincronización y la comunicación entre hilos en entornos de desarrollo Java.
|
Temporalización
(estimación)
|
Tiempo
necesario para estudiar los contenidos (h)
|
21
|
Tiempo
necesario para completar la tarea (h)
|
4
|
Tiempo
necesario para completar el examen (h)
|
1
|
Nº de días que se recomienda dedicar a esta unidad
|
26
|
La
temporalización anterior no deja de ser una estimación media,
ya que el tiempo a invertir va a depender
mucho de las circunstancias personales de cada cual.
|
Consejos
y recomendaciones
|
Te ofrecemos una serie de pautas que pueden ayudarte y facilitar la tarea de aprendizaje:
- Es muy importante que entiendas bien los conceptos de la unidad, básicos para este módulo.
- Para ello es conveniente que dispongas de Internet para consultar dudas.
- Organízate, elaborando un calendario y planificando un horario de estudio para evitar la acumulación de tareas.
- Haz una primera lectura de los contenidos del tema y continúa con una lectura detallada de cada apartado realizando los ejercicios de autoevaluación y anotando todas las dudas para consultarlas con tu tutora o tutor.
- Para completar conocimientos puedes consultar los enlaces que encontrarás bajo el epígrafe "Para Saber Más..."
- Recuerda que con este tipo de enseñanza tienes flexibilidad de horario y tú marcas el ritmo de estudio que más te interese, aunque te aconsejamos que te ajustes al calendario de aparición de las unidades didácticas y participes activamente en los foros de las respectivas unidades.
- En la medida de tus posibilidades reserva un tiempo semanal para el estudio y procura respetarlo, la constancia y el esfuerzo son la clave del éxito en este tipo de enseñanzas.
- Realiza las prácticas que están relacionadas con los contenidos que se vayan abordando. Ten en cuenta que en este tipo de formación a distancia tú eres quien tiene que determinar las prácticas que debes realizar.
- Realiza la tarea correspondiente a la unidad, pero primero lee atentamente el enunciado y asegúrate de haber entendido lo que has de hacer. Envíasela a tu tutor o tutora a través del sistema establecido en la plataforma.
- Haz el examen on-line de la unidad.
- Internet es un gran recurso y una gran fuente de información, pero es recomendable contrastar las informaciones con fuentes fiables.
- No dudes en comentarle a tu tutor o tutora cualquier duda que te pueda surgir.
|