Enumérer de façon asynchrone (C# 8.0)

Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 8.0. Sommaire Rappels concernant yield Enumérer de façon asynchrone Syntaxe de l’énumération   Avec await foreach   Avec une itération manuelle Implémentation avec ConfigureAwait(false) Utiliser un CancellationToken C# 8 Fonctionnalités C# 8.0 Précisions sur les versions de C# Fonction locale statique Utilisation de using…

Continuer à lire

Disposer des objets de façon asynchrone (C# 8.0)

Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 8.0. Sommaire Rappels sur async/await Disposer des objets de façon asynchrone Finalize() et Dispose() IAsyncDisposable Utilisation de using sans {…}   Avec await using   Avec ConfigureAwait() C# 8 Fonctionnalités C# 8.0 Précisions sur les versions de C# Fonction locale statique Utilisation de using…

Continuer à lire

ValueTask (C# 7)

Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire Avant de commencer… async/await FromResult(), FromException() et FromCanceled() ConfigureAwait()   Contexte de synchronisation   TaskScheduler   ConfigureAwait(false) ValueTask Compatibilité avec async/await ValueTask ne convient pas à tous les usages   Cas synchrone   Cas asynchrone IValueTaskSource A partir de C# 7.0, quelques…

Continuer à lire