你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 网络与通信
运用ACE消除网络通信复杂性(五)
 

(3)随后反应器框架在内部维护一些表,将不同的事件类型与事件处理器对象关联起来。在用户已登记的某个事件发生时,反应器发出对处理器中相应方法的回调。这里要校清楚两个概念:

 ① 事件处理器

事件处理器就是需要通过轮询发生事件改变的对象列表中的对象,例如连接的客户端,每个客户端都可以看成一个事件处理器。

② 回调事件

就是反应器支持的事件,如Socket读就绪,写就绪、就上面的例子来说,如果某个客户端(事件处理器)在反应器中注册了读就绪事件,当客户端给服务器发送一条消息的时候,就会触发这个客户端的数据可读的回调函数。

3 实例

例子给出了一个使用ACE_AcceptorACE_Reactor 简化服务器编程的例子。程序分成三大部分:

(1) 服务器初始化,包括一些参数的处理、端点初始化、环境准备。

(2) 处理客户端连接,创建服务处理事件并注册到反应堆。

(3) 反应堆检测到对应的服务处理事件发生,调用相应的回调函数进行处理。

 

3.1 服务器初始化

int main(int argc,char ** argv) {

ACE_INET_Addr dbi_addr8888;  //监听8888端口

DBI_Accept_Handler dah(dbi_addr);  // 初始化接受器事件处理器

 

// 注册上述事件处理器

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089