Junior — Middle
Projenizdeki asenkron işlemleri iptal etmek için CancellationToken'ı nasıl kullanabilirsiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
C#'ta CancellationToken, asenkron işlemleri iptal etmek için kullanılır ve isteğe bağlı olarak görevin yürütülmesini düzgün bir şekilde durdurmaya olanak tanır.
Projede, iptal desteği sağlayan yöntemlere CancellationToken geçirilebilir ve asenkron kod içinde durumu kontrol edilebilir. Token iptal sinyali veriyorsa, işlem erken tamamlanmalı ve kaynaklar serbest bırakılmalıdır.
Kullanım örneği:
public async Task LoadDataAsync(CancellationToken cancellationToken)
{
for (int i = 0; i < 10; i++)
{
cancellationToken.ThrowIfCancellationRequested();
await Task.Delay(1000); // çalışma simülasyonu
}
}
// İptal olasılığıyla çağrı
var cts = new CancellationTokenSource();
var task = LoadDataAsync(cts.Token);
// 3 saniye sonra iptal
cts.CancelAfter(3000);
try
{
await task;
}
catch (OperationCanceledException)
{
Console.WriteLine("İşlem iptal edildi");
}
Bu yaklaşım, asenkron görevlerin çalışma süresini esnek bir şekilde yönetmeye ve uygulamanın yanıt verme kabiliyetini artırmaya olanak tanır.