Зачем нужен CancellationToken? - C#
Формулировка задачи:
у CancellationTokenSource есть тот-же свойство IsCancellationRequested, и метод Cancel вызывается у CancellationTokenSource.
Зачем они нужны оба не понятно
Решение задачи: «Зачем нужен CancellationToken?»
textual
Листинг программы
- public void DoWork(CancellationToken externalToken)
- {
- // Create a new token that combines the internal and external tokens.
- this.internalToken = internalTokenSource.Token;
- this.externalToken = externalToken;
- using (CancellationTokenSource linkedCts =
- CancellationTokenSource.CreateLinkedTokenSource(internalToken, externalToken))
- {
- try {
- DoWorkInternal(linkedCts.Token);
- }
- catch (OperationCanceledException) {
- if (internalToken.IsCancellationRequested) {
- Console.WriteLine("Operation timed out.");
- }
- else if (externalToken.IsCancellationRequested) {
- Console.WriteLine("Cancelling per user request.");
- externalToken.ThrowIfCancellationRequested();
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д