当前位置:首页 > C#编程 > C#/.net框架 > 正文内容

C# .net1.0的异步编程模式APM,net2.0的异步编程模式EAP,net4.0的TPL与TAP模式

Jorge2年前 (2022-05-09)C#/.net框架781

 .net1.0的异步编程模式APM

   缺点是无法取消,也不知道其状态

.net2.0的异步编程模式EAP

   它是使用事件对APM进行了封装,可以取消和知道执行状态

.net4.0 async/await 和TPL

   已经成为语言关键字支持

.net4.0 TAP

   基于任务的异步模式TAP(Task-based Asynchronous Pattern )



前三者的的一点重要区别:

使用async和await关键字实现的异步方法,此时的异步方法被分成了多个代码片段去执行的,而不是像之前的异步编程模型(APM)和EAP那样,使用线程池线程去执行一整个方法。



四者参考下面的文章:


EAP

https://www.cnblogs.com/springsnow/p/13139926.html      

https://blog.csdn.net/ugug654/article/details/77932263


APM

https://blog.csdn.net/nginxs/article/details/77917172


async/await和TPL

http://www.skcircle.com/?id=1801

http://www.skcircle.com/?id=1800

C#多线程编程(二)线程池与TPL   谈到线程、线程池、TPL的各自优缺点

MSDN中关于async/await异步编程的说明  


TAP

https://www.cnblogs.com/springsnow/p/13140327.html






--------------------- 

作者:hackpig

来源:www.skcircle.com

版权声明:本文为博主原创文章,转载请附上博文链接!

扫描二维码推送至手机访问。

版权声明:本文由7点博客发布,如需转载请注明出处。

本文链接:http://6dot.cn/?id=85

标签: .NET.NET框架
分享给朋友:

“C# .net1.0的异步编程模式APM,net2.0的异步编程模式EAP,net4.0的TPL与TAP模式” 的相关文章

C#的propertygrid控件,选择和修改项目时很慢

C#的propertygrid控件,选择和修改项目时很慢

C#的propertygrid控件是很强。可以实现类似Vitual Studio属性面板那样的效果。但是。。。。我们一直痛苦它在选择和修改项目的时候很慢。我的用法是使用控件的SelectObject来绑定数据。C# PgridMotionSpeed.SelectedObject ...

C#字符串与享元(Flyweight)模式

C#字符串与享元(Flyweight)模式

注:关注这个话题是因为看到C#的关键字 lock时,其传入引用对象。因为string也是引用对象,所以能否做为lock的参数?对于这个问题,要搞明白C#的字符串的一个特点,它使用类似于享元模式的机制。因此在lock中锁字符串是相当不安全的。下面贴子是对C#字符串与享元模式的深入讨论。写这个文章,主要...

C# Modelbus crc16计算校验和程序

C# Modelbus crc16计算校验和程序

我们手里一个无刷电机,采用485的modelbus crc16协议来控制。因此需要一个计算校验和的工具。源码:C#using System;using System.Collections.Generic;using System.ComponentModel;usin...

C#中使用RegisterWindowMessage进行进程之间进行通讯

C#中使用RegisterWindowMessage进行进程之间进行通讯

注:大家都知道在window里,进程之间通讯可以用消息通讯。但是有个较冷门的知识就是RegisterWindowMessage。一般的sendmessage和postmessage是需要在窗体程序间进行通讯,你得知道对方窗口的句柄。这个句柄每次启动程序时是系统分配的,每次不一样。有了这个Regist...

C# tableLayoutPanel动态加载控件闪烁的解决方案

C# tableLayoutPanel动态加载控件闪烁的解决方案

WinForm加载多个自定义控件时,会出现很严重的闪烁问题,很卡,一块一块的加载(像打开网页时,网络很卡的那种感觉)简直没法忍受。在网上搜索了好久,网上大部分的方法是一下4种,但是都不能有效的解决问题。  1.将DoubleBuffered 设置 true,用双缓存处理Form界面内容加载,可以提高...

谈谈ObservableCollection观察者集合

谈谈ObservableCollection观察者集合

注:事件很常见,但有重复的代码量。如果你想简化一下事件的编程,而且是整个程序只使用一个像事件池一样的东西,可以尝试使用下文讲的ObservableCollection观察者集合来做到。ObservableCollection<T>类表示一个动态数据集合,在添加项,移除项或刷新整个列表时,...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。