serial_port类图
typedef basic_serial_port<> serial_port
- basic_io_object:实质上是serial_port_service类函数功能代理
- serial_port_base : 实质上是串口一些属性(波特率、奇偶校验等等)设置
serial_port_service 类图
- serial_port_service类继承service_base基类
- serial_port_service类功能实现关联reactive_serial_port_service类
- service_base类又继承于service类
reactive_serial_port_service类图
- reactive_serial_port_service类功能实现关联于reactive_descriptor_service
- reactive_descriptor_service类功能关联于reactor类和依赖于implementation_type
- implementation_type类三个成员主要为reactor类保存IO多路复用参数
- reactor的根据系统IO复用底层,选用其中一种(select/poll/epoll/kqueue)作为具体实现
epoll_reactor类图
- epoll_reactor类继承于service_base类
- epoll_reactor类依赖于descriptor_state类
- descriptor_state类继承于operation类
- descriptor_state类实质是一个operation的双向链表
- reactor_op类主要保存epoll_reactor的操作回调函数
- operation具体实现取决task_io_service_operation类