什么时候CancellationToken.CanBeCanceled可以为假?

Rom*_*kov 5 .net multithreading cancellation-token

文档CancellationToken.CanBeCanceled描述了它的作用,但没有提到何时它可能是错误的.因此,当我应该关注这个属性时,我并不完全清楚.

在哪种情况下它可能是假的,我什么时候应该看它?

Dam*_*ver 10

好吧,CancellationToken.None返回一个不可取消的.

如果您是坚持收到CancellationToken的API的用户,但您没有兴趣尝试取消该工作,那么您可以将此令牌传递给它.

作为构建 API的人,如果CanBeCancelled返回false,您可以进行某些优化 - 也许您检查IsCancellationRequested属性是"昂贵的".