Token у CancellationTokenSource
Token у
CancellationTokenSource
можно читать многократно: все копии
видят одну отмену после
Cancel.
Тип -
CancellationToken
с CanBeCanceled
true.
Синтаксис
CancellationToken token = cts.Token;
Пример
Давайте сохранить Token до отмены:
using System;
using System.Threading;
class Program
{
static void Main()
{
CancellationTokenSource cts = new CancellationTokenSource();
CancellationToken token = cts.Token;
cts.Cancel();
bool res = token.IsCancellationRequested;
Console.WriteLine(res);
cts.Dispose();
}
}
Результат выполнения кода:
True
Пример
Давайте сравнить два чтения Token:
using System;
using System.Threading;
class Program
{
static void Main()
{
CancellationTokenSource cts = new CancellationTokenSource();
CancellationToken first = cts.Token;
CancellationToken second = cts.Token;
cts.Cancel();
bool res = first.IsCancellationRequested
&& second.IsCancellationRequested;
Console.WriteLine(res);
cts.Dispose();
}
}
Результат выполнения кода:
True
Пример
Давайте проверить CanBeCanceled:
using System;
using System.Threading;
class Program
{
static void Main()
{
CancellationTokenSource cts = new CancellationTokenSource();
bool res = cts.Token.CanBeCanceled;
Console.WriteLine(res);
cts.Dispose();
}
}
Результат выполнения кода:
True
Смотрите также
-
Cancel,
установить флаг отмены -
IsCancellationRequested,
проверка у токена -
Register,
подписка на токен -
Dispose,
закрыть источник