zoukankan      html  css  js  c++  java
  • C#异步编程

     1 static void Main(string[] args)
     2         {
     3  Console.WriteLine("方法开始:"+DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
     4             var strRes = Task.Run(() => {return ReturnStr(); });
     5             Console.WriteLine("方法结束:"+DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
     6             for (int i = 0; i < 5; i++)
     7             {
     8                 Console.WriteLine(i);
     9             }
    10             Console.WriteLine("得到结果后:"+DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
    11             Console.WriteLine(strRes.Result);
    12             Console.ReadKey();
    13         }
    14 public static  string  ReturnStr()
    15         {
    16             Thread.Sleep(2000);
    17             return "方法执行后:"+ DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss");
    18         }

    运行结果:

    async & await

     1 static void Main(string[] args)
     2         {
     3 Console.WriteLine("方法开始:" + DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
     4  ReturnStr();
     5             for (int i = 0; i < 5; i++)
     6             {
     7                 Console.WriteLine(i);
     8             }
     9             Console.WriteLine("方法结束:"+DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
    10             Console.ReadKey();
    11         }
    12 
    13         public static async  Task ReturnStr()
    14         {
    15             Console.WriteLine("方法执行开始:" + DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
    16             Thread.Sleep(2000);
    17             var result=await Task.Run(()=>"方法执行后:"+ DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss"));
    18             Console.WriteLine(result);
    19         }

    运行结果:

    方法内等待语句须添加await

  • 相关阅读:
    Python进阶08 生成器
    Python进阶07 迭代
    Python进阶06 列表推导
    Python进阶05 函数property
    Python基础14 集合
    支付宝支付和微信消息推送
    Redis
    django之contenttype
    数据分析系列
    IPython
  • 原文地址:https://www.cnblogs.com/huangtaiyi/p/10838426.html
Copyright © 2011-2022 走看看