Temas importantes de C#

La programación asíncrona con async y await en C#

En esta lección vas a escribir código asíncrono con async y await para esperar una tarea sin bloquear el programa.

Introducción

Cuando un programa tiene que esperar operaciones largas, como leer un archivo, llamar a una API o usar un temporizador, la programación asíncrona (asynchronous) evita bloquear el hilo mientras espera. C# ofrece las palabras clave async y await para escribir código asíncrono tan legible como un código secuencial normal.

El método Main se declara static async Task. La instrucción await Task.Delay(20) suspende el método durante 20 milisegundos sin bloquear el hilo actual. Cuando termina la espera, el método continúa exactamente en ese punto y muestra Async work complete.

Ejemplo de C# ejecutable

C#
Ejecutar código →
Program.cs
using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        await Task.Delay(20);
        Console.WriteLine("Async work complete");
    }
}
Resultado de la ejecución
Async work complete

Practica con el depurador

Pon un punto de interrupción en una asignación o condición importante, pulsa Debug y revisa los valores locales antes de pasar a la siguiente línea.

Practica con un reto

Usa lo que cubre esta lección para resolver un problema real. Cada reto se ejecuta en el navegador, con pruebas al instante y una revisión de IA.

Todos los retos