小编Yon*_*gyi的帖子

如何在 C# 中将同步函数包装为异步函数?

我正在使用我无法修改的同步第三个函数,例如:

public void startDoSth(Action<string> onDone)
Run Code Online (Sandbox Code Playgroud)

startDoSth产生一个新线程来完成这项工作,并立即返回,当事情完成后,我的onDone函数将被调用。

我想编写一个如下所示的异步方法来包装它:

public async Task<string> doSthAsync();
Run Code Online (Sandbox Code Playgroud)

所以,有人可以这样称呼它:

string s = await doSthAsync()
onDone(s)
Run Code Online (Sandbox Code Playgroud)

doSthasync()我呼吁做startDoSth()真正的事情。但我不知道如何写doSthAsync()

谁能告诉我这是否可能以及如何做?多谢。

c# async-await

3
推荐指数
1
解决办法
359
查看次数

标签 统计

async-await ×1

c# ×1