Programação assíncrona com async e await em C#
Nesta lição, você vai escrever código assíncrono com async e await para esperar uma tarefa sem bloquear o programa.
Introdução
Quando o programa precisa esperar operações demoradas, como ler um arquivo, chamar uma API ou aguardar um temporizador, a programação assíncrona (asynchronous) evita que a thread fique bloqueada durante a espera. O C# oferece as palavras-chave async e await para escrever código assíncrono tão legível quanto código sequencial comum.
O método Main é declarado como static async Task. A instrução await Task.Delay(20) pausa o método por 20 milissegundos sem bloquear a thread em execução. Quando a espera termina, o método continua exatamente daquele ponto e imprime Async work complete.
Exemplo de C# executável
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
await Task.Delay(20);
Console.WriteLine("Async work complete");
}
}
Async work completePratique com o depurador
Pratique com um desafio
Use o conteúdo desta lição para resolver um problema real. Cada desafio roda no navegador, com testes instantâneos e uma revisão por IA.
Todos os desafios