Junior — Middle
Qual è lo scopo delle parole chiave async e await nella programmazione di operazioni asincrone?
sobes.tech AI
Risposta dell'AI
La parola chiave async viene utilizzata per contrassegnare un metodo come asincrono, consentendo di eseguire operazioni al suo interno senza bloccare il thread principale di esecuzione. Un metodo contrassegnato con async di solito restituisce un Task o Task<T>, permettendo al programma di continuare a funzionare mentre l'operazione è in corso.
La parola chiave await viene usata all'interno di un metodo async per attendere il completamento di un'operazione asincrona. Essa sospende l'esecuzione del metodo fino a quando il risultato non è disponibile, senza bloccare il thread, permettendo ad altre operazioni di essere eseguite in parallelo.
Esempio:
public async Task<string> DownloadContentAsync(string url)
{
using HttpClient client = new HttpClient();
string content = await client.GetStringAsync(url); // Attende il caricamento senza blocco
return content;
}