您现在的位置是:首页 >其他 >C#异步编程async和await关键字及示例代码网站首页其他

C#异步编程async和await关键字及示例代码

luckyext 2025-04-19 00:01:02
简介C#异步编程async和await关键字及示例代码

在C#开发中,从 C# 5.0 时代引入 async 和 await 关键字,我们使用 async 关键字可将方法指定为异步。异步编程模型成为处理多线程和异步操作的标准方式。async和await关键字使得编写非阻塞代码变得更直观更简洁。

1.用 async 关键字可将方法标为异步,如果对方法使用此关键字,则其称为异步方法。
如下示例代码,定义一个异步方法 myAsyncMethod():
     public static async Task myAsyncReadfile(string file)
     {

         StreamReader reader = new StreamReader(file);
         string content = await reader.ReadToEndAsync();
         Console.WriteLine(content);

     }


2.用await关键字,等待异步任务完成。出现了 await,指的是等待异步任务的结果。

如下示例代码,在主程序中用await关键字等待异步方法 myAsyncReadfile的结果

using System.Threading.Tasks;

namespace ConsoleApp1
{
    internal class Program
    {
        public static async Task myAsyncReadfile(string file)
        {

            StreamReader reader = new StreamReader(file);
            string content = await reader.ReadToEndAsync();
            Console.WriteLine(content);

        }


        static async Task Main(string[] args)
        {
            await myAsyncReadfile("d:\文档.txt");

            Console.WriteLine("主线程执行中");

        }
    }
}

总结
用async关键字将方法标为异步方法。
用await关键字等待异步任务的结果。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。