编程语言
首页 > 编程语言> > C#async\await组合

C#async\await组合

作者:互联网

一、概述

  编译器提供的便捷功能,就是语法糖。我的理解是为了优化代码。被async修饰的函数被称之为异步函数,主要用于异步编程,着重于靠await实现回调机制。

二、声明

  

//async用在方法名之前
 public static async Task<int> Test(){...}

//await 用在task前面
await task;

 

三、作用

  主线程在执行到await task时,会跳出task所在的方法体,而await task后面的语句都会被封装成一个后续操作(任务)

  在task执行完之后,该任务会被其他线程调用,有可能是主线程、子线程(相当于task.ContinueWith)或者其他线程。

 

四、注意事项

  1、在winform主界面使用async/await时,awai task中的task执行完之后,这个后续操作一定会被主线程调用。

  2、该组合要么不用,要用就一路用到底。

  3、await中可以嵌套多个await。

  4、await t 跟 t.wait 的区别:t.wait让主线程等待t完成,而await t 主线程会回到Main函数继续执行。

标签:task,C#,await,主线,线程,async,wait
来源: https://www.cnblogs.com/Darius0821/p/16491537.html