Aller au contenu

Task (sans résultat)

Contexte : Task représente une opération asynchrone qui ne retourne pas de valeur. C’est l’équivalent de void pour les méthodes asynchrones.

using System;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;
public class Example
{
public async Task DownloadFileAsync(string url)
{
using HttpClient client = new HttpClient();
string content = await client.GetStringAsync(url);
await File.WriteAllTextAsync("file.txt", content);
}
}
// Appel de la méthode
// await new Example().DownloadFileAsync("https://example.com/data");
  • La méthode retourne quand même un objet Task qui peut être attendu.
  • Les exceptions levées à l’intérieur de la méthode sont capturées dans la Task retournée.

Journalisation asynchrone : Écrire des entrées de journal dans un fichier ou une base de données sans bloquer le flux principal.

Exemple : Dans un middleware ASP.NET Core, vous attendez souvent next() qui retourne une Task.