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
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Migrare una service connection a workload identity federation in Azure DevOps
Routing statico e PreRendering in una Blazor Web App
Usare il colore CSS per migliorare lo stile della pagina
Esportare ed analizzare le issue di GitHub con la CLI e GraphQL
Potenziare Azure AI Search con la ricerca vettoriale
Usare le navigation property in QuickGrid di Blazor
Gestire il colore CSS con HWB
Gestione dei nomi con le regole @layer in CSS
Hosting di componenti WebAssembly in un'applicazione Blazor static
Proteggere le risorse Azure con private link e private endpoints