En el siguiente artículo, exploraremos en detalle Corrutina, un tema relevante que ha capturado la atención de expertos y público en general. A lo largo de los años, Corrutina ha sido objeto de debate, estudio y análisis, generando un sinfín de investigaciones y opiniones encontradas. Su importancia e impacto en la sociedad moderna lo convierten en un tema digno de exploración y reflexión. A través de este artículo, buscaremos comprender más a fondo qué es Corrutina, cuáles son sus implicaciones y de qué manera puede influir en diversos aspectos de nuestra vida cotidiana.
En un programa, una corrutina es una unidad de tratamiento semejante a una subrutina, con la diferencia de que, mientras que la salida de una subrutina pone fin a esta, la salida de una corrutina puede ser el resultado de una suspensión de su tratamiento hasta que se le indique retomar su ejecución (multitarea cooperativa). La suspensión de la corrutina y su reanudación pueden ir acompañadas de una transmisión de datos.
Las corrutinas permiten realizar tratamientos basados en algoritmos cooperativos como iteradores, generadores, tuberías, etcétera.
Según Donald Knuth, el término corrutina fue inventado por Melvin Conway en 1958, cuando trabajaba en la escritura de un programa en ensamblador. Más tarde, Conway propuso organizar un compilador en un conjunto de corrutinas, lo que trajo la posibilidad de utilizar diferentes rutas durante la depuración y de utilizar una sola estructura en producción.