C# 异步编程,async与await的简单学习
2024-10-07 06:29:17
前提声明:C# 5.0 .NET Framework 4.5 2012-08-15 异步和等待(async和await)、调用方信息(Caller Information) (C#版本与.NET版本对应关系以及各版本的特性).,所以VS2010及其以前的版本都是不行的。
两段代码直接看出名堂:
class Program
{
static void Main(string[] args)
{
//PaintBody();
//PaintBodyAsync();
Console.WriteLine("End");
} static async Task PaintBodyAsync()
{
Console.WriteLine("Header");
//就是遇到awaIt,这里面的东西不会阻塞,继续执行
await Task.Run(() =>
{
//System.Threading.Thread.Sleep(1000);//线程不管是否睡眠,都是先执行其他方法
Console.WriteLine("Body");
});
Console.WriteLine("Footer"); } static void PaintBody()
{
Console.WriteLine("Header");
System.Threading.Thread.Sleep(1000);
Console.WriteLine("Body");
Console.WriteLine("Footer"); }
}
最新文章
- Cacti -- Advance Ping
- 在MFC中使用GDI+的一般方法,以VC6.0编译器为例
- 深入理解计算机系统(2.4)---C语言的有符号与无符号、二进制整数的扩展与截断
- ExtJs Panel 滚动条设置
- coursera-miniproject Pang任务总结
- struts(五) 使用通配符 接收参数
- iOS取证将如漫漫长夜
- ios 获取n个月前或者n个月后的日期
- 1037: [ZJOI2008]生日聚会Party - BZOJ
- 安装 vs2005, vs2008 报错
- HDU 4099 Revenge of Fibonacci (数学+字典数)
- Git权威指南学习笔记(二)Git暂存区
- Spark SQL Catalyst源代码分析Optimizer
- ios ViewController的生命周期分析和基本使用逻辑
- SQL Server 2012 - 数据表的操作
- Angular4 - Can't bind to 'ngModel' since it isn't a known property of 'input'.
- [cogs2701]动态树
- WIN提权总结【本地存档-转载】
- Hive中数据加载失败:root:supergroup:drwxr-xr-x
- SSM框架搭建最新教程(超详细)
热门文章
- Error: java: 无法访问org.apache.hadoop.mapred.JobConf 找不到org.apache.hadoop.mapred.JobConf的类文件
- laravel5.5学习2-路由系统
- Linux的用户与用户组(权限管理)
- DNS 缓存投毒
- 使用Python的pandas-datareader包下载雅虎财经股价数据
- ARM伪指令和协处理器访问指令
- nginx的高级配置和优化
- No application found. Either work inside a view function or push an application context.
- win7抓带tag标记报文
- 图片转base64的几种场景(网络图片,本地图片,用户上传图片)