Menu
Coddy logo textTech

¿Qué es una corrutina?

Parte de la sección Logic & Flow del Journey de Lua de Coddy — lección 48 de 54.

Piensa en jugar a un videojuego. Puedes pausarlo en cualquier momento, ir a hacer otra cosa y luego volver para reanudarlo exactamente donde lo dejaste. Las corrutinas en Lua funcionan de manera similar.

Una corrutina es como una función especial que puede pausarse a sí misma en medio de la ejecución y luego continuar más tarde desde ese punto exacto. A diferencia de las funciones regulares que se ejecutan de principio a fin sin detenerse, las corrutinas te dan control sobre cuándo se pausan y se reanudan.

Esta capacidad permite algo llamado multitarea cooperativa. En lugar de ejecutar múltiples tareas exactamente al mismo tiempo, las corrutinas te permiten cambiar entre diferentes tareas de forma voluntaria.

Una corrutina se ejecuta durante un tiempo, se pausa a sí misma, otra toma el control, y así sucesivamente. Cada corrutina coopera decidiendo cuándo devolver el control.

Las corrutinas son útiles cuando necesitas dividir operaciones de larga duración, gestionar sistemas por turnos o crear secuencias que necesiten recordar su estado entre llamadas. En las próximas lecciones, aprenderás a crear, pausar y reanudar corrutinas en Lua.

Hoja de referencia

Una corrutina es una función especial que puede pausarse a sí misma durante la ejecución y reanudarse más tarde desde el mismo punto exacto, a diferencia de las funciones normales que se ejecutan de principio a fin sin detenerse.

Las corrutinas permiten la multitarea cooperativa, donde las tareas intercambian voluntariamente el control entre sí en lugar de ejecutarse simultáneamente. Una corrutina se ejecuta, se pausa, otra toma el control y el ciclo continúa.

Las corrutinas son útiles para dividir operaciones de larga duración, gestionar sistemas por turnos o crear secuencias que necesitan recordar su estado entre llamadas.

Pruébalo tú mismo

Esta lección no incluye un desafío de código.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Logic & Flow