Aller au contenu

Task pour void async

Contexte : Pour les méthodes asynchrones qui ne retournent pas de valeur, retournez Task. Cela permet à l’appelant d’attendre l’opération.

using System.IO;
using System.Threading.Tasks;
public class DataService
{
public async Task SaveDataAsync(string data)
{
await File.WriteAllTextAsync("file.txt", data);
}
}
// L’appelant peut attendre
// await new DataService().SaveDataAsync("contenu");

Retourner Task permet à l’appelant :

  • D’attendre la fin.
  • De gérer les exceptions (les exceptions sont capturées dans la tâche).
  • De composer avec d’autres opérations asynchrones.

Gestionnaires d’événements dans l’UI : Utilisez async void pour les événements, mais pour toutes les autres méthodes asynchrones sans valeur de retour, utilisez Task.

Exemple : Recommandations async