Il pattern async/await semplifica notevolmente lo sviluppo di applicazioni che coinvolgono operazioni asincrone. Quest'ultime vengono rappresentate dall'oggetto Task, ma non obbligatoriamente devono essere caratterizzate da chiamate su web, ne devono eseguire qualcosa.
Se per esempio volessimo simulare delle latenze, o eseguire qualcosa solo dopo un determinato tempo, possiamo utilizzare il metodo statico Task.Delay per ottenere un task che scatta dopo il tempo indicato. Nello snippet seguente utilizziamo questo metodo per aggiungere un ritardo dopo una chiamata web, per processare i dati solo dopo una finta latenza.
async void Load()
{
// Ottengo i dati da remoto
var items = await LoadFromWebAsync();
// Aspetto 3 secondi
await Task.Delay(3000);
// Processo gli items
foreach (var item in items)
{
// ...
}
}
L'overload accetta anche un CancellationToken nel caso necessitiamo di annullare l'operazione di ritardo.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Migrare applicazioni legacy nel cloud con Azure App Service Managed Instance
Effettuare chiamate API tramite GitHub App
Azure SQL Database per dev: tutte le novità da non perdere
Referenziare un package NuGet in una file based app .NET
Gestire il ciclo di vita di AbortController in Javascript
Nuova modale riconnessione Blazor
Usare i generics di C# con la clausola nameof in modo semplificato
Gestire trasferimenti cloud con Azure Storage Mover
Integrazione di Copilot in .NET Aspire
From Data to Insight: Exploratory Data Analysis with Python, VS Code and SQL MCP Server
Gestire pubblicazione Kubernetes tramite .NET Aspire
Keynote Global Azure 2026 - ASPItalia.com


