Novo CancellationToken() e IsCancellationRequested sem CancellationTokenSource

0

Pergunta

Se eu criar um CancellationToken instância existe alguma maneira de alguma forma, alterar o IsCancellationRequested propriedade ou não eu sempre preciso de um CancellationTokenSource instância e o seu método 'Cancelar' para que? Em outras palavras, para corrigir cancelamento de tarefas, faz sentido usar o novo CancellationToken () ou deve-se usar sempre CancellationTokenSource.Token?

E se eu sempre preciso usar CancellationTokenSource.Token, então, em que situações poderia eu preciso instanciar CancellationToken separadamente? Por que eu preciso fazer novo CancellationToken()? Quando posso fazer CancellationToken = CancellationTokenSource.Token.

1

Melhor resposta

0

new CancellationToken() - ou equivalentemente CancellationToken.None produz um token de cancelamento que nunca será cancelada.

Ele é útil quando você chamar um método esperando um CancellationToken, mas o seu código faz, nunca a intenção de cancelar a tarefa.

2021-11-24 04:14:27

Obrigado! Em outras palavras, o valor da IsCancellationRequested propriedade não pode ser alterada em nova CancellationToken (). E de novo CancellationToken () pode ser usado onde uma CancellationToken precisa ser passado, mas não é assumido, de que estamos planejando para cancelar a nossa operação em tudo. Que eu me fiz entender corretamente?
Klaus Gütter

De fato, IsCancellationRequested é uma só propriedade. Se você quiser, você pode ter um olhar para o código fonte

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................