Definea.es

InicioTecnología › Programación Asíncrona

Qué es Programación Asíncrona: definición, ejemplo y uso en España

Programación Asíncrona — definición y uso en España Programación Asíncrona — concepto clave en tecnología Programación Asíncrona — ejemplo real en España

Definición de Programación Asíncrona

La programación asíncrona es un modelo de ejecución en el qué una tarea qué requiere esperar —una petición de red, una lectura de disco, una consulta a base de datos— no bloquea el hilo de ejecución mientras espera su resultado, permitiendo qué el programa siga atendiendo otras tareas mientras tanto. Se implementa mediante callbacks, promesas (promises) o la sintaxis async/await, presente en JavaScript, Python (asyncio) o C#, y se apoya en un bucle de eventos (event loop) qué reanuda cada tarea pendiente cuando su operación termina, sin necesidad de crear un hilo del sistema operativo por cada una.

Qué significa Programación Asíncrona en palabras simples

Es programar de forma qué, mientras se espera algo lento —como una respuesta de internet—, el programa no se queda parado sin hacer nada, sino qué sigue atendiendo otras cosas y vuelve a lo pendiente cuando ya está listo.

Cómo se aplica Programación Asíncrona en la práctica

Un servidor Node.js qué atiende miles de peticiones simultáneas usa programación asíncrona para qué, mientras una consulta a la base de datos está en curso, ese mismo hilo pueda empezar a procesar la siguiente petición entrante, en vez de crear un hilo nuevo por cada cliente y agotar la memoria del servidor.

Preguntas frecuentes sobre Programación Asíncrona

¿Qué es el "callback hell" y cómo lo resuelve async/await?

Es el anidamiento excesivo de funciones callback dentro de otras callbacks qué hace el código difícil de leer; async/await permite escribir código asíncrono con una estructura secuencial visualmente similar al código síncrono, sin ese anidamiento.

¿Programación asíncrona es lo mismo qué multihilo?

No, la asincronía puede lograrse en un solo hilo mediante un bucle de eventos qué intercala tareas de espera; el multihilo reparte trabajo entre varios hilos qué se ejecutan en paralelo, y ambos enfoques pueden combinarse.

¿Qué pasa si una tarea asíncrona nunca se resuelve?

El código qué espera su resultado queda pendiente indefinidamente, por lo qué es habitual añadir timeouts explícitos para evitar qué una promesa colgada bloquee de forma indirecta el flujo del programa.

Términos relacionados en Tecnología

Llave De Acceso Red Definida Por Software Repositorio de Código Identidad como Servicio (IDaaS) Comunicación M2M Escalabilidad Vertical