En el desarrollo de software, las operaciones sincrónicas suceden una tras otra:
- Operación 1
- Operación 2
- Operación 3
El compilador o intérprete garantiza que las tres operaciones anteriores se ejecutarán en secuencia: 1, 2, 3.
Asíncrono significa que algunas de esas operaciones se pueden ejecutar simultáneamente, lo que les permite terminar en un orden diferente, dependiendo de su duración. Por ejemplo, si la operación 2 fuera asíncrona, podríamos tener los siguientes escenarios de orden de finalización: 1, 2, 3 o 1, 3, 2 . En el primer caso, la operación 2 todavía se completa antes de la operación 3. En el segundo caso, la operación 3 finaliza antes de la operación 2.
- ¿CÓMO funciona una aplicación web creada con lenguaje C?
- ¿A dónde va el personal de inteligencia en la web profunda?
- ¿Cuáles son las 20 actividades principales en Internet?
- Vi un número después de www en el nombre de dominio (como www1.domain_name.com). ¿Alguien puede explicarme qué significa este número?
- ¿Por qué hay tanta controversia sobre la existencia de salas rojas en la red profunda?
Las técnicas para ejecutar operaciones asincrónicas varían. A menudo se ejecutan por hilos separados (como una llamada AJAX en el navegador).
En el desarrollo web front-end, AJAX son solicitudes HTTP asincrónicas enviadas al servidor mientras se carga la página. El beneficio de usar llamadas asincrónicas es que no bloquean la interfaz de usuario y pueden procesarse en segundo plano mientras el usuario interactúa con el sitio: las animaciones de JavaScript funcionan como de costumbre y el navegador es capaz de mostrar las actualizaciones en la pantalla.
Si la misma llamada fuera síncrona (totalmente factible con XMLHttpRequest), todo el navegador (o pestaña en los navegadores modernos) se congelaría hasta que se completara la llamada, congelando así la interfaz de usuario.