Aller au contenu

CancellationToken

Contexte : CancellationToken est passé aux méthodes asynchrones pour permettre l’annulation. La méthode peut vérifier IsCancellationRequested ou appeler ThrowIfCancellationRequested().

using System.Threading;
using System.Threading.Tasks;
public class Processor
{
public async Task ProcessAsync(CancellationToken token)
{
for (int i = 0; i < 100; i++)
{
token.ThrowIfCancellationRequested();
await Task.Delay(100, token);
}
}
}

Utilisez CancellationToken.None lorsque vous n’avez pas de jeton à passer.

await processor.ProcessAsync(CancellationToken.None);

Requêtes EF Core : ToListAsync(cancellationToken) accepte un jeton pour annuler la requête de base de données.

Exemple : Annulation dans EF Core