Unidad 3. Programación Concurrente
PROGRAMACIÓN CONCURRENTE (MULTIHILOS) Hace referencia a las técnicas de programación que son utilizadas para expresar la concurrencia entre tareas y solución de los problemas de comunicación y sincronización entre procesos. La programación concurrente es la ejecución simultánea de múltiples tareas interactivamente. Estas tareas pueden ser un conjunto de procesos o hilos de ejecución creados por un único programa. Las tareas se pueden ejecutar en una sola CPU (multiprogramación), en varios procesadores, o en una red de computadores distribuidos. En programación, nos estamos refiriendo a los lenguajes de programación que permiten la ejecución de varias tareas en forma simultánea. Por ejemplo, consideremos la cantidad de aplicaciones que corren a la vez dentro de un mismo entrono gráfico. Mientras una persona escribe un documento, está corriendo Microsoft Windows además de Internet Explorer, Windows Explorer, CD Player y el Control de Volumen. Estas aplicaciones son ejecutadas dentr