使用等待与结果
Using await versus Result
谁能解释一下在异步模式中使用 await
和 Result
有什么区别,我应该在哪里使用它们?
public static async Task<string> GetVersion(int port, string method)
{
var client = new HttpClient();
client.BaseAddress = new Uri("http://localhost:" + port);
return client.GetStringAsync("/test").Result; //<===============this versus
return await client.GetStringAsync("/test").ConfigureAwait(false);//<=====this
}
调用 Result
将阻塞当前线程,直到操作完成。 await
returns 到调用者并在异步操作完成后继续方法的其余部分。
谁能解释一下在异步模式中使用 await
和 Result
有什么区别,我应该在哪里使用它们?
public static async Task<string> GetVersion(int port, string method)
{
var client = new HttpClient();
client.BaseAddress = new Uri("http://localhost:" + port);
return client.GetStringAsync("/test").Result; //<===============this versus
return await client.GetStringAsync("/test").ConfigureAwait(false);//<=====this
}
调用 Result
将阻塞当前线程,直到操作完成。 await
returns 到调用者并在异步操作完成后继续方法的其余部分。