小编典典

等待一个无效的异步方法

all

我怎样才能等待一个void async方法完成它的工作?

例如,我有如下功能:

async void LoadBlahBlah()
{
    await blah();
    ...
}

现在我想确保所有内容都已加载,然后再继续其他地方。


阅读 62

收藏
2022-07-07

共1个答案

小编典典

最佳实践是仅在函数async void为 fire and forget 方法时才将其标记,如果要等待,则应将其标记为async Task.

如果您仍然想等待,请像这样包装它await Task.Run(() => blah())

2022-07-07