Contenido del Curso
Introducción a .NET con C#
Introducción a .NET con C#
¿Qué es la Programación Asíncrona?
Hasta ahora, el código que hemos estado escribiendo era puramente sincrónico, lo que significa que cada tarea se realizaba una tras otra, y casi nunca había tareas ejecutándose al mismo tiempo.
Si tenemos un código como el siguiente:
Cada método se ejecutará uno después del otro. Así, task2
no comenzará antes de que task1
haya finalizado. De manera similar, task3
no comenzará antes de que task2
haya finalizado.
Esto es aceptable en programas básicos, pero cuando desarrollamos aplicaciones grandes, debemos asegurarnos de que una tarea no bloquee la ejecución de otra.
Por ejemplo, en los navegadores web, una pestaña puede estar reproduciendo música, mientras que en otra pestaña el usuario puede estar navegando en redes sociales. Este tipo de multitarea es posible gracias a la programación asíncrona.
La programación asíncrona es un método de programación que nos permite crear programas capaces de ejecutar múltiples tareas al mismo tiempo. Esto ayuda a que las aplicaciones sean más eficientes y responsivas al ejecutar varias tareas simultáneamente.
C# nos proporciona herramientas útiles para la programación asíncrona. Veremos cómo utilizarlas en el próximo capítulo.
Beneficios de la programación asíncrona:
Al ejecutar tareas que requieren mucho tiempo concurrentemente, podemos evitar eficazmente que el programa principal se bloquee. Este enfoque concurrente garantiza que la aplicación permanezca responsiva, incluso cuando realiza tareas que consumen muchos recursos o tiempo;
Mayor capacidad de respuesta y ejecución más rápida proporcionan una experiencia de usuario más fluida;
En lugar de ejecutar todas las operaciones en una sola cola, tu aplicación las ejecuta de forma concurrente. De este modo, adquiere la capacidad de manejar un mayor número de operaciones simultáneas, lo que la hace más escalable. Por ejemplo, podrías tener una aplicación donde muchos clientes (usuarios) necesitan ser atendidos al mismo tiempo.
Desventajas de la programación asíncrona:
Al emplear programación asíncrona en tu código, puedes aumentar potencialmente la complejidad del mismo, lo que dificulta su gestión y depuración;
Si haces que una parte de tu código sea asíncrona, la mayor parte del código tiende a volverse asíncrona también.
¡Gracias por tus comentarios!