繁体   English   中英

从第三方dll作为同步C#调用Async方法

[英]Calling a Async method from third party dll as synchronous C#

关于调用异步过程,我有些头脑呆滞。 我有我的void main函数,我想从第三方dll调用一个仅作为异步方法存在的方法-我不在乎它是异步的,我只想同步运行它。

那么我该怎么做呢? 我快速浏览了如何在C#中从同步方法调用异步方法? 但似乎有点复杂,不必担心上下文等。这应该很容易吧?

谢谢托马斯

只需获取返回的Task的Result属性

var returned = methodCall().Result;

这将阻塞直到任务完成,然后再返回。 如果已经完成,它将继续正常执行。 我认为您只是想一次同步调用一个方法,但以防万一,请注意,如果您有多个要异步发生的调用,则需要先调用它们,然后再执行结果

var returned1 = methodCall1(); // this is a Task<List<string>>
var returned2 = methodCall2();
var actualValue1 = returned1.Result; // this is the associated List<string>
var actualValue2 = returned2.Result;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM