【发布时间】:2022-01-02 11:53:33
【问题描述】:
如果我创建一个 CancellationToken 实例,是否有任何方法可以更改 IsCancellationRequested 属性,或者我是否总是需要一个 CancellationTokenSource 实例及其 Cancel 方法?换句话说,为了正确取消任务,是使用new CancellationToken()还是应该一直使用CancellationTokenSource.Token?
如果我总是需要使用 CancellationTokenSource.Token,那么在什么情况下我可能需要单独实例化 CancellationToken? 为什么我需要做 new CancellationToken()?我什么时候可以做 CancellationToken = CancellationTokenSource.Token.
【问题讨论】:
-
看看这个:stackoverflow.com/questions/14215784/… 很多关于这两者区别的答案,其中一个来自参与设计这些类的人。
-
不,为什么令牌可以与 CancellationTokenSource 分开存在,这里没有说。有一般用语。但没有具体细节。举一个除了 CancellationTokenSource 之外令牌有用的例子。是的,令牌不是一个类,而是一个结构。为什么我需要做 new CancellationToken()?我什么时候可以做 CancellationToken = CancellationTokenSource.Token.
标签: c# .net cancellationtokensource cancellation-token