• (66) c# async await


    1.使用 async await

    2.返回值

            static void Main(string[] args)
            {
                Program p = new Program();
                Console.WriteLine(1);
                p.Go();
                Console.WriteLine(2);
                Console.ReadLine();
            }
    
            async Task Go()
            {
                Console.WriteLine(3);
                await a();
                Console.WriteLine(4);
            }
            async Task a()
            {
                Console.WriteLine(5);
                int i = await b();
                Console.WriteLine(i);
            }
            async Task<int> b()
            {
                Console.WriteLine(6);
                await Task.Delay(5000);
                Console.WriteLine(7);
                int i = 999;
                return i;
            }

     2以后暂停几秒后继续执行

    3.异步lambda表达式

    4.异步更新UI

     Random random = new Random();
            private void button1_Click(object sender, EventArgs e)
            {
                Test();
            }
            public async void Test()
            {
                while (1 == 1) 
                {
                    string temp = await TestAsync();
                    textBox1.Text = temp.ToString();
                }
            }
    
            Task<string> TestAsync()
            {
                return Task.Run(() => { 
                    Thread.Sleep(1000);
                    return random.Next(1, 100).ToString(); 
                });
            }

    5.主线程异步 4.5新增

            static async Task Main(string[] args)
            {
                HttpClient httpClient = new HttpClient();
                var msg = await httpClient.GetAsync("https://www.baidu.com/");
                Console.WriteLine(msg.StatusCode);
                Console.ReadKey();
            } 
  • 相关阅读:
    js 抓取距离的方法
    mysql 设置账户权限
    mysql 主从复制
    mysql 分区
    linux 安装samba
    linux 配置lamp
    linux 本地虚拟机配置
    linux 权限
    linux 磁盘分区
    mysql-进阶 if/while/case
  • 原文地址:https://www.cnblogs.com/buchizaodian/p/11871286.html
Copyright © 2020-2023  润新知