C#异步编程3:Await表达式

1.await表达式是由关键字await和一个空闲对象(称为任务)组成, 这个任务可能是一个Task类型对象,也可能不是 :                                                                                                                                                                    await  task(空闲对象或任务)

2.空闲对象是一个awaitable类型的实例,awaitable类型是指包含GetAwaiter方法的类型,该方法没有参数,返回类型为awaiter.这句话可以理解为await表达式是由await关键字 +  awaitable类型的类组成,而awaitable类型的类只需要包含GetAwaiter方法且GetAwaiter方法满足要求既可(如GetAwaiter方法返回类型为awaiter,包含bool IsCompleted{get;}属性等)

3.Task类就是awaitable类型

4.可以自己构建一个空闲对象,不使用Task,也可以使用Task.Run方法创建一个对象

  

猜你喜欢

转载自blog.csdn.net/ABC13222880223/article/details/84945478