没有 CancellationTokenSource 的新 CancellationToken() 和 IsCancellationRequested

new CancellationToken() and IsCancellationRequested without CancellationTokenSource

如果我创建一个 CancellationToken 实例,是否有任何方法可以更改 IsCancellationRequested 属性 或者我是否始终需要一个 CancellationTokenSource 实例及其 Cancel 方法?换句话说,为了正确取消任务,使用 new CancellationToken () 有意义还是我们应该始终使用 CancellationTokenSource.Token?

而如果我总是需要使用CancellationTokenSource.Token,那么在什么情况下我可能需要单独实例化CancellationToken? 为什么我需要做新的 CancellationToken()?我什么时候可以做 CancellationToken = CancellationTokenSource.Token.

new CancellationToken() - 或等效地 CancellationToken.None 生成一个永远不会被取消的取消令牌。

当您调用需要 CancellationToken 的方法但您的代码从不打算取消任务时,它很有用。