我有一个函数接受委托作为输入参数.
public delegate bool Callback();
public static class MyAPI
{
public static handle(Callback callback) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
所以我用这样的匿名代表调用api
MyAPI.handle(delegate
{
// my implementation
});
Run Code Online (Sandbox Code Playgroud)
我的问题是如何在匿名委托中调用异步方法?
MyAPI.handle(delegate
{
// my implementation
await MyMethodAsync(...);
});
Run Code Online (Sandbox Code Playgroud)
我得到一个错误,说'await'运算符只能在异步匿名方法中使用'?
函数MyAPI.handle()只期望非异步委托.我不能改变那种方法.我该如何解决我的问题?
谢谢.
您可以调用异步方法,传递异步lambda表达式:
MyAPI.handle(async () =>
{
// my implementation
await MyMethodAsync(...);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3812 次 |
| 最近记录: |