C# await async Task


 

//原文:https://www.cnblogs.com/yan7/p/8401681.html
//原文:https://www.cnblogs.com/s5689412/p/10073507.html

 

        public void test2()
        {
            //在出现await的地方,异步才开始发生
            DemoAsync2();
            Console.WriteLine("同步代码");
        }

        async Task DemoAsync2()
        {
            //感觉:await标识异步代码的开始
            //await关键字是函数开始变成异步的地方,它像是一个一元操作符

            //执行的过程:
            //如果await发现awaitable尚未完成,那么它就会以异步方式运行。它让awaitable去运行函数剩余部分直到结束,然后从异步函数中返回。
            //接下来,当awaitable结束之后,它会执行异步函数的剩余部分。


            Console.WriteLine("已经睡了3秒 前");

            //await标识异步代码的开始
            await Task.Run(() => {
                Thread.Sleep(3000);
                Console.WriteLine("已经睡了3秒 了");
            });
            Console.WriteLine("已经睡了3秒 后");


            Console.WriteLine("又睡了3秒 前");
            Thread.Sleep(3000);
            Console.WriteLine("又睡了3秒 后");
        }

 

执行后的截图:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM