using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
Console.WriteLine("Start of the program");
// 调用异步方法并等待其完成
await DoWorkAsync();
Console.WriteLine("End of the program");
}
static async Task DoWorkAsync()
{
Console.WriteLine("Starting work");
// 模拟耗时操作,例如网络请求或文件读取
await Task.Delay(2000); // 模拟2秒的延迟
Console.WriteLine("Work completed");
}
}
async 和 await 关键字:
async 用于标记一个方法为异步方法。在这个例子中,Main 和 DoWorkAsync 方法都被标记为 async。await 用于等待一个异步操作完成,而不会阻塞当前线程。在 Main 方法中,我们使用 await DoWorkAsync() 来等待 DoWorkAsync 方法完成。Task 和 Task<T>:
Task 表示一个不返回值的异步操作。Task<T> 表示一个返回类型为 T 的异步操作。在这个例子中,DoWorkAsync 返回的是 Task,表示它是一个不返回值的异步操作。Task.Delay:
Task.Delay 是一个模拟耗时操作的方法,它会返回一个 Task,该任务会在指定的时间后完成。这里我们模拟了2秒的延迟。异步编程的好处:
async 和 await 可以让程序在等待异步操作完成时保持响应,不会阻塞主线程,特别适用于需要处理 I/O 操作(如网络请求、文件读写等)的场景。上一篇:c# 异步方法
下一篇:c# 两个日期之间的天数
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站