深入理解 c# 第十五章 异步地显示页面长度 异步类型

    class AsyncForm : Form
	{
	    Label label;
	    Button button;
	
	    public AsyncForm()
	    {
	        label = new Label { Location = new Point(10, 20), Text = "Length" };
	        button = new Button { Location = new Point(10, 50), Text = "Click" };
	        button.Click += DisplayWebSiteLength;//包装事件处理程序
	        AutoSize = true;
	        Controls.Add(label);
	        Controls.Add(button);
	    }
	
	    async void DisplayWebSiteLength(object sender, EventArgs e)
		//sender {Text = "Click"}  e是坐标
	    {
            label.Text = "Fetching...";
            using (HttpClient client = new HttpClient())
			//client {System.Net.Http.HttpClient}
            {
                string text = await client.GetStringAsync("http://csharpindepth.com");
				//text 比较长  开始获取页面
                label.Text = text.Length.ToString();//更新UI
            }
	    }

        static void Main()//异步地显示页面长度 异步类型
        {
            Application.Run(new AsyncForm());
        }
	}


  网络延迟会让应用程序迟钝,如果有异步编程就不会延迟。
  简单地创建了UI,并直接为按钮绑定了事件处理程序。有趣的是 DisplayWebSiteLength
方法。按下按钮,将获取文本,并在便签中显示HTML的字符长度。不管操作是否成功,

HttpClient都会恰当地进行释放。


按下按钮,出现数字


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值