Sobes.tech
Junior — Middle

Wie kann man CancellationToken verwenden, um asynchrone Operationen in Ihrem Projekt abzubrechen?

sobes.tech KI

Antwort von AI

CancellationToken in C# wird verwendet, um asynchrone Operationen abzubrechen, sodass die Ausführung einer Aufgabe bei Bedarf korrekt unterbrochen werden kann.

Im Projekt kann CancellationToken an Methoden übergeben werden, die eine Abbruchunterstützung bieten, und seinen Status im asynchronen Code überprüfen. Wenn das Token eine Abbruchmeldung sendet, sollte die Operation vorzeitig beendet werden, um Ressourcen freizugeben.

Beispiel für die Verwendung:

public async Task LoadDataAsync(CancellationToken cancellationToken)
{
    for (int i = 0; i < 10; i++)
    {
        cancellationToken.ThrowIfCancellationRequested();
        await Task.Delay(1000); // Arbeit simulieren
    }
}

// Aufruf mit Abbruchmöglichkeit
var cts = new CancellationTokenSource();
var task = LoadDataAsync(cts.Token);

// Abbruch nach 3 Sekunden
cts.CancelAfter(3000);

try
{
    await task;
}
catch (OperationCanceledException)
{
    Console.WriteLine("Operation wurde abgebrochen");
}

Dieser Ansatz ermöglicht eine flexible Steuerung der Ausführungszeit asynchroner Aufgaben und verbessert die Reaktionsfähigkeit der Anwendung.