系列文章目录
《ZLToolKit源码学习笔记》(1)VS2019源码编译
《ZLToolKit源码学习笔记》(2)工具模块之日志功能分析
《ZLToolKit源码学习笔记》(3)工具模块之终端命令解析
《ZLToolKit源码学习笔记》(4)工具模块之消息广播器
《ZLToolKit源码学习笔记》(6)线程模块之整体框架概述
《ZLToolKit源码学习笔记》(7)线程模块之线程池组件:任务队列与线程组
《ZLToolKit源码学习笔记》(8)线程模块之线程负载计算器
《ZLToolKit源码学习笔记》(9)线程模块之任务执行器
《ZLToolKit源码学习笔记》(11)线程模块之工作线程池WorkThreadPool
《ZLToolKit源码学习笔记》(12)事件轮询模块之整体框架概述
《ZLToolKit源码学习笔记》(13)事件轮询模块之管道的简单封装
《ZLToolKit源码学习笔记》(14)事件轮询模块之定时器
《ZLToolKit源码学习笔记》(15)事件轮询模块之事件轮询器EventPoller
《ZLToolKit源码学习笔记》(16)网络模块之整体框架概述(本文)
《ZLToolKit源码学习笔记》(17)网络模块之基础接口封装类SockUtil
《ZLToolKit源码学习笔记》(18)网络模块之Buffer缓存
《ZLToolKit源码学习笔记》(19)网络模块之套接字封装
《ZLToolKit源码学习笔记》(20)网络模块之TcpServer
《ZLToolKit源码学习笔记》(21)网络模块之TcpClient与Session
《ZLToolKit源码学习笔记》(22)网络模块之UdpServer
前言
网络模块主要是对系统网络相关API进行了封装,并提供了易用的TCP服务器、TCP客户端、UDP负载均衡服务器、TCP、UDP会话等基础类。
目录
一、概述
网络模块主要包含以下文件:
Buffer.h, Buffer.cpp | 缓存对象封装。存储socket接收及待发送的数据; |
sockutil.h, sockutil.cpp | 系统网络相关API的统一封装; |
Socket.h, Socket.cpp | 套接字封装; |
Server.h | 服务器基类,以及SessionHelper封装; |
TcpServer.h, TcpServer.cpp | TCP服务器封装; |
UdpServer.h, UdpServer.cpp | UDP服务器封装; |
Session.h, Session.cpp | TCP session和UDP session封装; |
TcpSession.h | 封装了TcpSessionWithSSL类,让TCP服务器快速支持TLS; |
TcpClient.h, TcpClient.cpp | TCP客户端封装; |
二、类图
各文件中的类关系如下图: