Objetivo: Practicar sincronización mínima, evitar deadlocks y suspensión cooperativa en un sistema de hilos tipo “inmortales”.
- Correr con
-Dfight=naivey registrar problemas (salud negativa, inconsistencias). - Corregir con orden total (o
tryLock(timeout)) y comparar resultados. - Implementar Pausa/Reanudar estable con
PauseController. - Implementar Stop ordenado (interrupciones + cierre de ejecutor).
- Hacer thread-safe el
ScoreBoard(contadores/estadísticas). - (Libre) Dining Philosophers: deadlock + solución.
- Código Java 21,
RESPUESTAS.txtcon análisis y evidencia (thread dumps/capturas).
Goetz et al., Java Concurrency in Practice, págs. 1–4 y 15–21.