我真的不明白为什么await,async也不要像我们应该那样提高我的代码的性能.
虽然持怀疑态度,但我认为编译器应该重写我的方法,以便下载并行完成...但似乎并没有真正发生.
(我确实意识到await并且async不创建单独的线程;但是,操作系统应该在parallal中进行下载,并在原始线程中回调我的代码 - 不应该吗?)
我使用async和await不正确吗?使用它们的正确方法是什么?
码:
using System;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
static class Program
{
static int SumPageSizesSync(string[] uris)
{
int total = 0;
var wc = new WebClient();
foreach (var uri in uris)
{
total += wc.DownloadData(uri).Length;
Console.WriteLine("Received synchronized data...");
}
return total;
}
static async Task<int> SumPageSizesAsync(string[] uris)
{
int total = 0;
var wc = …Run Code Online (Sandbox Code Playgroud)