c#利用async和await关键字隐式创建异步任务。 2.展示async和await关键字的基本用法
时间: 2024-04-08 13:28:02 浏览: 155
在C#中,使用async和await关键字可以方便地创建和管理异步任务。下面是async和await关键字的基本用法:
1. 创建异步方法:
使用async关键字修饰方法,将其标记为异步方法。例如:
```csharp
public async Task MyAsyncMethod()
{
// 异步操作代码
}
```
2. 等待异步操作:
在异步方法中,使用await关键字等待一个异步操作完成。例如:
```csharp
public async Task MyAsyncMethod()
{
// 异步操作代码
await SomeAsyncOperation();
// 继续执行其他代码
}
```
在上述代码中,SomeAsyncOperation()是一个异步方法,使用await关键字等待其完成。在等待期间,控制权会返回给调用方,不会阻塞线程。
3. 返回异步结果:
异步方法可以返回Task或Task<T>类型的对象,表示异步操作的结果。例如:
```csharp
public async Task<int> GetResultAsync()
{
// 异步操作代码
int result = await SomeAsyncOperation();
return result;
}
```
在上述代码中,GetResultAsync()方法返回一个Task<int>对象,表示异步操作的结果为int类型。
4. 异常处理:
使用try-catch语句可以捕获异步操作中的异常。例如:
```csharp
public async Task MyAsyncMethod()
{
try
{
// 异步操作代码
await SomeAsyncOperation();
}
catch (Exception ex)
{
// 处理异常
}
}
```
在上述代码中,如果SomeAsyncOperation()方法抛出异常,将会被catch块捕获并进行处理。
阅读全文