zoukankan      html  css  js  c++  java
  • async await

    1.BookDAL 有一个产生string 的方法

     public string GetTestString()
            {
                string sReturn = "";
                string[] sList = { "a", "b", "c", "d", "e", "f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z" };
                for (int i=1;i<6;i++)
                {
                    Thread.Sleep(1000);
                    Random r = new Random();
                    int n = r.Next(1, 26);
                    sReturn += sList[n];
                }
                return sReturn;
            }

    2. MVC HomeController Contact 调用, 跑完需要大概20秒

    public ActionResult Contact()
            {
                ViewBag.Start = DateTime.Now;
    
                BookService BookDAL = new BookService();
                string s1 = BookDAL.GetTestString();
                string s2 = BookDAL.GetTestString();
                string s3 = BookDAL.GetTestString();
                string s4 = BookDAL.GetTestString();
    
                ViewBag.sValue = s1 + "-" + s2 + "-" + s3 + "-" + s4;
    
                ViewBag.Message = "Your contact page.";
    
                ViewBag.End = DateTime.Now;
                return View();
            }

    3. MVC HomeController About 用async await,. 它跑完需要大概6秒。

       public async Task<ActionResult> About()
            {
                ViewBag.Start = DateTime.Now;
    
                ViewBag.Message = "Your application description page.";
    
                BookService BookDAL = new BookService();
    var s1 = GetStringAsync(BookDAL); var s2 = GetStringAsync(BookDAL); var s3 = GetStringAsync(BookDAL); var s4 = GetStringAsync(BookDAL); await Task.WhenAll(s1, s2, s3, s4); ViewBag.sValue = s1.Result + "-" + s2.Result + "-" + s3.Result + "-" + s4.Result; ViewBag.End = DateTime.Now; return View(); } public async Task<string> GetStringAsync(BookService BookDAL) { return await Task.Run(() => { return BookDAL.GetTestString(); }); }
  • 相关阅读:
    用Android Studio 开发Android应用
    以前写的一个下载小说的工具
    折半算法的C#实现方式-递归和非递归
    128. 最长连续序列
    一语点醒技术人:你不是 Google(转载)
    计算机专业导论与思维系统--哈工大
    安卓笔记 09_28
    安卓学习笔记
    安卓数据库08_29
    08_28学习笔记Kotlin
  • 原文地址:https://www.cnblogs.com/VirtualMJ/p/5183456.html
Copyright © 2011-2022 走看看