繁体   English   中英

我可以将 CancellationTokenSource.Cancel 和 CancellationTokenSource.CancelAfter(timeSpan) 用于同一任务吗?

[英]Can I use CancellationTokenSource.Cancel and CancellationTokenSource.CancelAfter(timeSpan) for the same task?

我在任何地方的文档中都没有看到这个 -

如果我想使用CancellationTokenSource.CancelAfter(600000)作为故障保护,以防我的CancellationTokenSource.Cancel()调用永远不会被调用。

CancelAfter()会以任何方式干扰Cancel()调用吗?

不,没有干扰。 CancellationTokenSource时,它是一个原子操作。 Cancel将首先发生并立即处理活动的CancelAfter相关计时器,或者计时器将首先被触发,随后的Cancel将是空操作。

如果需要,可以在此处研究Cancel方法的源代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM