[英]how to await the return of the auxiliar async method?
我有这种方法:
private async void myMethod01()
{
await myAynchMethod();
//more code
}
private void myMethod02()
{
//code
myMethod01();
//more code
}
当我执行代码时,当myMethod02调用myMethod01时,继续执行//更多代码,而又不希望myMethod01完成其代码。
这是因为myMethod01中的await将执行点返回到myMethod02,而myMethod02在调用mymethod01之后继续下一行代码。
我想知道在myMethod02中是否有任何方法可以等到myMethod02完成执行。
我希望myMethod01尽可能不返回任务。
非常感谢。
我想知道在myMethod02中是否有任何方法可以等到myMethod01完成执行。
和
我希望myMethod01尽可能不返回任务。
是两个矛盾的句子。 如果您想将synchorounsly 等到 Method01
完成,它的异步,你就必须使之与是awaitable返回一个类型。 不一定必须是Task
,它可以是实现GetAwaiter
方法的自定义类型, GetAwaiter
返回实现INotifyCompletion
或ICriticalNotifyCompletion
。
您绝对不能让方法返回void
并异步地等待它完成,这没有任何意义。 相反,您可以简单地同步运行代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.