等待方法中的取消令牌

J. *_*non 5 c# async-await async-ctp cancellation-token

将令牌放在任务的构造函数中的原因很多,如下所述: 任务构造器中的取消令牌:为什么?

通过使用关键字async / await,它如何工作?例如下面的代码:

public async Task MethodAsync(CancellationToken token)
{
  await Method01Async();
  await Method02Async();
}
Run Code Online (Sandbox Code Playgroud)

虽然这是一个异步过程。我很快就使用了“ Task.StartNext”或“ Task.Run”或“新任务”。为了能够指定我的取消令牌,该怎么办?

Ste*_*ary 4

您不应该Taskasync方法中使用构造函数。通常,您只想传递信息CancellationToken,如下所示:

public async Task MethodAsync(CancellationToken token)
{
  await Method01Async(token);
  await Method02Async(token);
}
Run Code Online (Sandbox Code Playgroud)