c# - 等待并返回给调用者

标签 c# async-await

如果我有一个异步方法:

public async Task MyMethodAsync()
{
   // [.. Some synchronous code here ..]

   await AnotherAsyncMethod();
}

在我的代码中的某个时刻,我这样调用它:

await MyMethodAsync();

此语句是否会立即返回给调用者,而无需输入 MyMehodAsync ?我想是的,但不确定。

如果我希望调用 MyMethodAsync 以首先执行 [.. 此处有一些同步代码 ..] 部分,我应该这样做:

var t = MyMethodAsync(); 
await t;                 

谢谢

最佳答案

当您的代码调用时

await MyMethodAsync();

然后执行进入MyMethodAsync(同步)。该方法仅在/如果 MyMethodAsync 返回未完成的 Task 时“暂停”。

你可以找到我的 async/await intro post helpful .

关于c# - 等待并返回给调用者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12035788/

相关文章:

c# - 任务不包含在一行代码中完成的定义

c# - .net 4.5 中异步和同步的区别

c# - 如何从 Asp.Net Core 中的 DBContext 文件中的 appsettings.json 读取连接字符串?

c# - 在 EF Core 中实现递归属性加载

async-await - React Native 等待 AsyncStorage 获取值

c# - 将长时间运行的任务与异步/等待模式结合起来的正确方法是什么?

wpf - 使用 WPF,是否有一种方法可以检测阻止 GUI 更新的方法调用?

c# - Excel 包 : Office Open XML

c# - 可执行文件因奇怪的异常而失败

c# - ComboBox 在 Clear() 之后有它的旧值