我是否必须等待一个异步方法
本文关键字:一个 异步方法 是否 等待 | 更新日期: 2023-09-27 18:07:36
我使用一个只支持异步方法的HttpClient
。我是否必须在调用方法中await
它们(而不是在异步方法本身中,据我所知,我必须等待HttpClient
方法中的调用)?
在那个项目中我真的不需要多线程。我会很好地阻止并等待,直到我得到HttpClient
的响应,因为我需要无论如何都有数据。这是一个Console
应用程序
不,没有什么需要您await
呼叫。调用只是返回一个Task<T>
给你,而不是直接返回一个T
。如果在Task
上调用Result
属性:
var result = client.MakeCallAsync().Result;
你在告诉它"我不在乎它是否阻塞,我希望我的代码(和这个线程)在这里等待,直到它完成。"
在那个项目中我真的不需要多线程。
async
是关于异步的,而不是多线程。
我会很好地阻止和等待,直到我得到一个响应从HttpClient,因为我需要有数据无论如何。这是一个控制台程序。
在这种情况下,我只想说保持所有内容同步。即使用WebClient
代替HttpClient
。