【问题标题】:Is disposing CancellationTokenSource safe when there are outstanding tokens?当有未完成的令牌时,处理 CancellationTokenSource 是否安全?
【发布时间】:2016-06-16 21:56:41
【问题描述】:
如果我有之前由 CancellationTokenSource.Token 返回的 CancellationToken { get;调用 CancellationTokenSource Dispose() 是否安全? (我担心它会使 CancellationTokens 失效。)
如果不安全,我可以只依赖 CancellationTokenSource 终结器吗?
【问题讨论】:
标签:
.net
cancellationtokensource
【解决方案1】:
这不是(记录为)安全的,但也没有必要。即使在处理了CancellationTokenSource 之后,您也可以将令牌存储起来并安全地使用它。只是不要再打电话给CancellationTokenSource.Token。使用您在处置前获得的令牌。
您是否需要处理 CancellationTokenSource 是一个不同的问题。有不同的案例和不同的意见。有一个thread 对此,但答案是可疑的。小心使用。