何时使用“异步任务”与“任务”?

问题描述 投票:0回答:1

多年来我一直在进行异步 C# 编程,但今天是我第一次注意到有一种方法可以返回

Task
而不使用
async
await
关键字。

这2种方法有什么区别?

Task<int> SomeMethod()
{
  return SomeAsyncMethod();
}

async Task<int> SomeMethod()
{
  return await SomeAsyncMethod();
}

在什么情况下我们应该/不应该使用

async
await
关键字?

性能有差异吗?

这个问题可能已经有了答案,但我找不到。

c# .net async-await
1个回答
-3
投票

当您不需要等待上述

async
方法的返回时,可以省略
await
async
。例如,您有一个流程,其中包括在您想要使用“即发即忘”方法的地方发送电子邮件。

就性能而言,调用不带

async
await
方法并继续流程而不等待该方法执行,速度更快且开销更少。

© www.soinside.com 2019 - 2024. All rights reserved.