
异步编程是基于云计算微服务架构中,人们不需要通过购买更多的电脑和服务器来加快应用程序执行速度,就可以实现多步操作。使用异步编程可以直接处理多个服务或计算核心上的组阻塞输入(I/O)操作和并发操作。
.NET三种异步编程:
TAP异步编程优点
例:根据输入的网站使用异步编程抓取网页,再显示页面大小。`
using System;
using System.Net.Http;
using System.Threading.Tasks;
namespace ConsoleApp15
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入网络地址");
string inputUrl = Console.ReadLine();
CallBackMethod(inputUrl);
Console.ReadKey();
}
static Task DownloadPage(string httpUrl)
{
return Task.Run(async () => {
var client = new HttpClient();
byte[] content = await client.GetByteArrayAsync(httpUrl);
return content.Length;
});
}
async static void CallBackMethod(string url)
{
var result=await DownloadPage(url);
Console.WriteLine("总共下载了{0}次{1}B",url,result);
}
}
}
运行效果