1. ¿Qué es la concurrencia?
Empezamos definiendo palabras: concurrencia, paralelismo, multitarea... ¿qué significa y qué relación hay entre estos conceptos?
La concurrencia es una técnica de programación que permite fabricar programas multihilo que puedan ser paralelizables para poder aprovechar mejor los recursos del ordenador. Este módulo de mi roadmap de Java se centra en la concurrencia en Java y en las clases que nos brinda el JDK para poder escribir código paralelizable. No sólamente tenemos hilos, Java tiene toda una arquitectura de clases pensada para que podamos hacer todo tipo de programación concurrente, con estructuras de alto nivel que tratan de minimizar la complejidad y los posibles errores a la hora de escribir código que se ejecute de forma paralela en múltiples CPUs.