看一个开源项目,示例代码是最直接的教程了。

ACE的Reactor代码如下图所示:

打开README

This directory contains subdirectories that test the ACE Reactor and Proactor. DgramTests the CODgram and Dgram classes with the Reactor.. MiscVarious miscellaneous tests of Reactor functionality(e.g., signals, timers, notification, etc.).. MulticastTests out the ACE multicast capabilities in conjunctionwith the Reactor.. NtalkerA program that implements a multicast "chat" program.. ProactorA program that illustrates the "Proactive" version ofthe Reactor

用表格展示

代码 内容
Dgram

基于UDP协议,包括ACE_SOCK_Dgram和ACE_SOCK_CODgram

http://www.dre.vanderbilt.edu/Doxygen/5.4/html/ace/a01650.html

http://www.dre.vanderbilt.edu/Doxygen/5.4/html/ace/a01647.html

FIFO FIFO一般指先入先出队列。用FIFO实现的服务——客户模型是用一个公共的只读管道接受请求,然后根据请求进程的进程ID另创建一个新的管道与其通信。
Misc Reactor所有函数的测试例子
Multicast

UDP广播

https://blog.csdn.net/qq_41278986/article/details/118311200

Ntalker This test program illustrates how the ACE datagram multicast feature works.
Proactor

This README file lists all the example applications for the Proactor framework.在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同步I/O,而Proactor运用于异步I/O操作。

https://blog.csdn.net/weiwangchao_/article/details/42917507

TP_Reactor

This program demonstrates what we think is a bug in the ACE library. The
affected component is the ACE_TP_Reactor. According to the documentation, the
reactor ensures that only one of the handle_*() methods of an event handler is
called at a time. Tino found this to be not true and I wrote this example
program showing the behavior. I do not exclude the possibility that we are
using the ACE library in an unintended/wrong way. So comments on the code as
well as any other remarks are welcome.

就是ACE的Reactor测试框架

https://blog.csdn.net/chinaclock/article/details/49120497

https://blog.csdn.net/bingozq/article/details/2453570

WFMO_Reactor WFMO_Reactor是ACE_Reactor在Windows下的默认实现(为什么不选择ACE_Select_Reactor作为默认实现,可能是基于效率和强大性的考虑),WFMO_Reactor的低层使用的函数是WaitForMultipleObjects和WSAEventSelect,WSAEnumNetworkEvents。其中WaitForMultipleObjects函数用于处理线程,互斥量,信号灯,事件,定时器等事件,而WSAEventSelect用于处理网络IO事件。
https://blog.csdn.net/fullsail/article/details/2901792

总结:

Reactor的应用程序继承ACE_Event_Handler类,调用相关的封装实现网络通讯,包括UDP和TCP协议。自带断线重连功能。非常好用。

多谢,亲爱的美美。

ACE_TAO 017 ACE_wrappers\examples\Reactor相关推荐

  1. Reactor设计模式

    Reactor这个词译成汉语还真没有什么合适的,很多地方叫反应器模式,但更多好像就直接叫reactor模式了,其实我觉着叫应答者模式更好理解一些.通过了解,这个模式更像一个侍卫,一直在等待你的召唤,或 ...

  2. 学之者生,用之者死——ACE历史与简评

    学之者生,用之者死--ACE历史与简评 分类: c++ 2010-03-10 11:0627334人阅读 评论(203)收藏举报 学之者生,用之者死--ACE历史与简评 陈硕 (giantchen_A ...

  3. Reactor by Example--转

    原文地址:https://www.infoq.com/articles/reactor-by-example Key takeaways Reactor is a reactive streams l ...

  4. 发布一个基于 Reactor 模式的 C++ 网络库

    发布一个基于 Reactor 模式的 C++ 网络库 陈硕 (giantchen_AT_gmail) Blog.csdn.net/Solstice 2010 Aug 30 本文主要介绍 muduo 网 ...

  5. [翻译]Reactor Netty参考指南 - 8.UDP客户端

    Reactor Netty参考指南目录 原文地址 Reactor Netty提供了易于使用.易于配置的UdpClient.它隐藏了创建UDP客户端所需的大部分Netty的功能,并增加了Reactive ...

  6. ACE_TAO 014 ACE_Event_Handler

    ACE_Event_Handler接口是Reactor框架的事件处理器接口,它为应用程序的事件处理提供模板函数.它是框架五元素中的元素2.在示例ACE_TAO 008 Reactor基本原理与说明中, ...

  7. reactor模式学习

    1.什么是reactor模式 2.reactor模式解决的问题是什么 3.reactor模式的实现方式有哪些 一. 什么是reactor模式 讲这个之前,先整体上看看,一般的服务端架构设计都是怎么做的 ...

  8. 什么是反应式编程(超详细说明),反应式编程和命令式编程的区别。如何使用Spring中的Reactor。Reactor中常用的操作。Mono和Flux。

    文章目录 一.反应式编程初探 什么是反应式编程 为什么需要反应式编程? 反应式编程的规范 二.上手反应式编程(使用Spring中的Reactor) 对比反应式编程和命令式编程代码 添加相应依赖 Mon ...

  9. 编译ACE_TAO库的过程中遇到的一些问题+vxworks镜像组件定制+Relocation value does not fit in 26 bits解决办法

    编译环境 操作系统:windows7 工具:ACE+TAO_2.0a版本源码.workbench_3.3.ARMARCH7diab编译器 编译过程中遇到的问题 编译ACE_TAO库的方法我就不介绍了, ...

  10. Tomcat V6 Examples移植到Apusic V5.1

    目标:将Tomcat V6的的例子Examples移植到Apusic V5.1上 术语:Tomcat:只提供了WEB容器的开源服务器: Apusic:提供了完整的J2EE支持的商用服务器: %TOMC ...

最新文章

  1. 文档和帮助创作工具提供商Innovasys实用教程(一)
  2. 不要使用Android Studio的Git Commit了----记一次debug
  3. 2013年c语言课后作业答案,2013年计算机二级C语言课后模拟题三及答案
  4. java 1000以内的完数
  5. 根据库位获取仓库id
  6. 大众点评被合并至美团? 官方回应:不存在这种可能性
  7. C++_class Template about Stack(使用类模板实现栈操作)
  8. sas最新sid及安装方法
  9. 计算机管理里边设置访问权限,电脑访问权限设置_电脑软件访问权限设置
  10. 华三路由器虚拟服务器设置,H3C vLNS系列虚拟L2TP网络服务器 配置指导-E0324-5W100...
  11. 一、Oracle创建账户、修改、删除账户及授权和撤销授权。
  12. 关于PIN只能更改不能删除的解决方法
  13. 向境外支付软件测试费,支付宝怎么打开境外支付?境外支付有手续费吗?
  14. MapReduce实现矩阵乘法的一些总结
  15. 【读过的书】《万人如海一身藏》
  16. 从六度分隔到无尺度网络
  17. 绑定机制(转自天运科技)
  18. oracle中有没有distance,oracle_关于extended distance cluster  rac的介绍
  19. 630本经典绘本世界中英文PDF+音视频,呕心推荐史上最全电子版绘本合集
  20. 权游播完了, 你在骂烂尾, 有人却悄悄解锁了新操作……

热门文章

  1. [转载] C#开发实战1200例(第I卷)目录
  2. Android案例分享__HomePageA__仿'58到家/百度糯米/豆果美食/美团外卖/手机京东'首页
  3. 微信小程序滑动验证拼图(有效果图)
  4. Color---颜色对照表
  5. mysql优化join_MySQL-巧用Join来优化SQL
  6. linux 内核死机 堆栈,高通平台Linux kernel死机解题心得
  7. 百世快递财报:净亏损大幅缩窄38%,来之不易
  8. go-优雅地重启http服务之endless
  9. 查询mysql 的内存使用_如何查看MySQL内存使用情况
  10. 【Android Jetpack】彻底弄清Navigation的BackStack如何变化