c# async await 的Demo

如下代码:

  在运行异步方法:DownloadDocsMainPageAsync() 后,后续的代码直接可以运行。

        在调用 await downloading()后等待运行结果。

代码如下:

        public static async Task DoAsyn()
        {
            Task<int> downloading = DownloadDocsMainPageAsync();
            Console.WriteLine("长时后台方法(DownloadDocsMainPageAsync)已运行.");
            int bytesLoaded = await downloading;
            Console.WriteLine($"长时运行结果 {bytesLoaded} .");
        }
        private static async Task<int> DownloadDocsMainPageAsync()
        {
            Console.WriteLine("开始:后台长时间方法.");
            int result = await Task.Run(() =>{
                Thread.Sleep(1000);
                return 3213213;
            });
            Console.WriteLine("结束:后台长时间方法.");
            return result;
        }

调用 DoAsyn() 方法,打印结果:

开始:后台长时间方法.
长时后台方法(DownloadDocsMainPageAsync)已运行.
结束:后台长时间方法.
长时运行结果 3213213 .

 

posted @ 2022-10-24 14:49  蜜铀  阅读(24)  评论(0编辑  收藏  举报