ACE_Time_Value】的更多相关文章

头文件“Time_Value.h” 为了兼容各个平台的时间特性,ACE Reactor框架提供了ACE_Time_Value类.ACE_Time_Value的关键方法见下图3.2和表3.2.3.3: ACE_Time_Value目的是为了提供一个规范的时间表达格式,比如,规范ACE_Time_Value(1,1000000)的值与ACE_Time_Value(2)的值相等.由于ACE_Time_Value(1,1000000)用法比较简单,本文不再阐述. 读书笔记:C++ Network Pro…
ACE源码约10万行,是c++中非常大的一个网络编程代码库,包含了网络编程的边边角角. ACE代码可以分三个层次:OS层.OO层和框架层: OS层主要是为了兼容各个平台,将网络底层API统一化,这一层用户不关心. OO层则是对一些常用的数据结构或方法进行OO封装,方便上层使用,包括socket方法,进程.线程和他们的同步机制等. 框架层实现了一些优秀的网络框架. 1 ACE_INET_Addr 类名 ACE_INET_Addr 所在文件 INET_Addr.h 功能 处理和存储IP.端口.协议类…
原文出自http://www.cnblogs.com/binchen-china,禁止转载. 上篇提到用Reactor模式,利用I/O复用,获得Socket数据并且实现I/O层单线程并发,和dispatch层把不同的I/O绑定到了不同的Event中去处理.也就是已经实现了多个client连接和通信,且可以把不同的I/O与Event句柄绑定,指定处理函数. 但是问题来了,多个用户连接时,I/O层可以通过复用以较快的速度处理连接和把过来的数据关联到绑定的Event函数执行.但是绑定Event函数获得…
原文出自http://www.cnblogs.com/binchen-china,禁止转载. 在之前的文章中提到过Reactor模式和Preactor模式,现在利用ACE的Reactor来实现一个基于Reactor框架的服务器. 首先回顾下Reactor模式和Preactor模式. Reactor模式: Reactor模式实现非常简单,使用同步IO模型,即业务线程处理数据需要主动等待或询问,主要特点是利用epoll监听listen描述符是否有响应,及时将客户连接信息放于一个队列,epoll和队列…
该类属中的类都位于ACE_SOCK之下:它提供使用BSD socket编程接口的Internet域和UNIX域协议族的接口.这个类属中的类被进一步划分为: Dgram类, Acceptor类和Stream类:Dgram类基于UDP数据报协议,提供不可靠的无连接消息传递功能.另一方面,Stream类基于TCP协议,提供面向连接的消息传递. .Connector类和Stream类:Acceptor和Connector类分别用于被动和主动地建立连接.Acceptor类封装BSD accept()调用,…
1.涉及类 ACE_Task//ACE任务ACE_Activation_Queue//ACE命令队列 ACE_Method_Request//ACE请求(命令) 2.简介 ACE主动对象模式 主动对象模式用于降低方法执行和方法调用之间的耦合.该模式描述了另外一种更为透明的任务间通信方法. 传统上,所有的对象都是被动的代码段,对象中的代码是在对它发出方法调用的线程中执行的,当方法被调用时,调用线程将阻塞,直至调用结束.而主动对象却不一样.这些对象具有自己的命令执行线程,主动对象的方法将在自己的执行…
1.涉及类 ACE_INET_Addr//ACE网络地址ACE_SOCK_Dgram//ACE报文 2.简介 UDP通信时无需像TCP那样建立连接和关闭连接,TCP编程时需要通过accept和connect来建立连接,而UDP通信省略了这一步骤,相对来说编程更为简单. 由于UDP通信时无建立连接,服务器端不能像TCP通信那样在建立连接的时候就获得客户端的地址信息,故服务器端不能主动对客户端发送信息(不知道客户端的地址),只有等到收到客户端发送的UDP信息时才能确定客户端的地址信息,从而进行通信.…
1.涉及类 ACE_INET_Addr//ACE网络地址ACE_SOCK_Acceptor//ACE网络服务器ACE_SOCK_Connector//ACE网络客户端ACE_SOCK_Stream//ACE数据流 2.简介 TCP通讯 传输控制协议TCP(Transmission Control Protocol):TCP提供可靠的.面向连接的运输服务,用于高可靠性数据的传输.TCP协议的可靠性是指保证每个tcp报文能按照发送顺序到达客户端. Tcp通信过程一般为如下步骤: a) 服务器绑定端口…
1: 线程池组件的配置文件: [log] ;DEBUG = 0 ;INFO = 1 ;WARN = 2 ;FAULT = 3 level=0 ;SCREENOUT = 0 ;FILEOUT = 1 ;BOTH = 2 director = 2 ;TEST = 0 ;RUN = 1 mode = 0 ;ONE = 0x00 ;FOUR = 0x01 split = 0 ;AUTODEL = 0x00 ;MANUALDEL = 0x01 manager=0 [threadpool] minthrea…
ACETimerClockGenerator.h ClockGeneratorIF.h 在类中定义一个结构体,在结构体中定义一个函数. 在结构体中定义一个函数,这样做有什么好呢? TimerHandler.h 用了模板的方法去构造定时器类.有助于底层调用上层.在构造的时候就初始化一个类中最大的定时器个数,及模板类(也就是parent). TimerHandler(T *parent, ) { //初始化向量,赋值给私有的成员变量. this->parent = parent; this->nu…