【发布时间】:2016-12-30 18:43:52
【问题描述】:
在 DLL 中使用 HttpClient sub。但是调用应用程序希望得到一个 True 或 False 作为 HttpClient 工作的返回值。
所以我试着写一个像这样的简单调用应用程序
Public Function SendBasket() As Integer
Try
SendMarketBasket()
If MktResp = "Loaded" Then
Return 0
ElseIf MktResp = "Nothing to Load" Then
Return -1
End If
Catch ex As Exception
Return -1
End Try
End Function
Private Async Sub SendMarketBasket()........
显然,调用 Async 调用之后的 If 语句在设置 MktResp 之前立即运行。怎样才能在Async调用完成后才返回函数结果?
TIA 哈利
【问题讨论】:
-
我不认为有任何方法可以判断
Async Sub何时完成 - 它们是一劳永逸的。您可以将其更改为Private Async Function SendMarketBasket() As Task并使用SendMarketBasket().Wait()但这可能会死锁。 This 有一些很好的信息,可能还有其他信息。
标签: vb.net async-await httpclient