2

我的问题是关于Task.Run(Action, CancellationToken),为什么委托CancellationToken没有明确访问它Action

我的意思是,我仍然可以隐式地使用它作为委托捕获的上下文的一部分:

Task DoWorkAsync(CancellationToken ct)
{
    return Task.Run(() => 
    {
        while (moreWork) 
        {
           // do work
           ct.ThrowIfCancellationRequested();
        } 
    } 
}

在这种情况下,为什么我需要ct作为第二个参数传递给Run? 我错过了什么?

4

0 回答 0