Sobes.tech
Junior — Middle

Ինչպես կարելի է օգտագործել CancellationToken՝ ձեր նախագծում ասինխրոնային գործողությունները չեղարկելու համար։

sobes.tech AI

Պատասխան AI-ից

C#-ում CancellationToken-ը օգտագործվում է ասինխրոնային գործողությունների չեղարկման համար, ինչը թույլ է տալիս ճիշտ կերպով ընդհատել առաջադրանքը պահանջով:

Նախագծում, դուք կարող եք փոխանցել CancellationToken-ը այն մեթոդներին, որոնք աջակցում են չեղարկմանը, և ստուգել նրա վիճակը ասինխրոնային կոդում: Եթե նշան է ստացվում չեղարկման մասին, ապա գործողությունը պետք է ավարտվի նախապես, ազատելով ռեսուրսները:

Օգտագործման օրինակ:

public async Task LoadDataAsync(CancellationToken cancellationToken)
{
    for (int i = 0; i < 10; i++)
    {
        cancellationToken.ThrowIfCancellationRequested();
        await Task.Delay(1000); // աշխատանքային սիմուլացիա
    }
}

// Զանգում հնարավորությամբ չեղարկելու
var cts = new CancellationTokenSource();
var task = LoadDataAsync(cts.Token);

// Չեղարկում 3 վայրկյան հետո
cts.CancelAfter(3000);

try
{
    await task;
}
catch (OperationCanceledException)
{
    Console.WriteLine("Գործողությունը չեղարկվեց");
}

Այս մոտեցումը թույլ է տալիս ճկուն կերպով կառավարել ասինխրոնային առաջադրանքների կատարման ժամանակը և բարելավել ծրագրի արձագանքման կարողությունը։