Ottimizzazione dell'applicazione Async (C# e Visual Basic)
È possibile aggiungere la precisione e la flessibilità alle applicazioni async utilizzando i metodi e le proprietà che il tipo Task rende disponibile. Negli argomenti di questa sezione vengono illustrati gli esempi che utilizzano CancellationToken e i metodi principali Task come Task.WhenAll e Task.WhenAny.
Utilizzando WhenAny e WhenAll, è possibile avviare più facilmente più attività e attendere il completamento monitorando una singola attività.
WhenAny restituisce un'attività che si completa quando una qualsiasi attività in una raccolta è completa.
Per esempi di utilizzo di WhenAny, vedere Annullare le attività asincrone rimanenti dopo che ne è stata completata una (C# e Visual Basic) e Avviare più attività asincrone ed elaborarle quando vengono completate (C# e Visual Basic).
WhenAll restituisce un'attività che si completa quando tutte le attività in una raccolta sono state completate.
Per ulteriori informazioni e un esempio che dura WhenAll, vedere Procedura: estendere la procedura dettagliata asincrona tramite Task.WhenAll (C# e Visual Basic).
In questa sezione vengono presentati i seguenti esempi:
Annullare un'attività asincrona o un elenco di attività (C# e Visual Basic).
Annullare attività asincrone dopo un periodo di tempo (C# e Visual Basic)
Annullare le attività asincrone rimanenti dopo che ne è stata completata una (C# e Visual Basic)
Avviare più attività asincrone ed elaborarle quando vengono completate (C# e Visual Basic)
Nota
Per eseguire gli esempi, è necessario che Visual Studio 2012, Visual Studio 2013, Visual Studio Express 2012 per Windows Desktop,Visual Studio Express 2013 per Windows o .NET Framework 4.5 o 4.5.1 siano installati sul computer.
I progetti creano un'interfaccia utente che contiene un pulsante che avvia il processo e un pulsante che lo cancella come nell'immagine seguente. I pulsanti sono denominati startButton e cancelButton.
È possibile scaricare progetti completi di Windows Presentation Foundation (WPF) da esempio Async: ottimizzazione dell'applicazione.
Vedere anche
Concetti
Programmazione asincrona con Async e Await (C# e Visual Basic)