Skip to content

Latest commit

 

History

History
 
 

src

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

源代码放置在src文件夹下,里面有若干模块:

src
|
|-- NetWork				# 网络模块
|	|-- Socket.cpp			# 套接字抽象封装,包含了TCP服务器/客户端,UDP套接字
|	|-- Socket.h
|	|-- sockutil.cpp		# 系统网络相关API的统一封装
|	|-- sockutil.h
|	|-- TcpClient.cpp		# TCP客户端封装,派生该类可以很容易实现客户端程序
|	|-- TcpClient.h
|	|-- TcpServer.h			# TCP服务器模板类,可以很容易就实现一个高性能私有协议服务器
|	|-- Session.h 		# TCP/UDP服务私有协议实现会话基类,用于处理TCP/UDP长连接数据及响应
|
|-- Poller				# 主线程事件轮询模块
|	|-- EventPoller.cpp		# 主线程,所有网络事件由此线程轮询并触发
|	|-- EventPoller.h
|	|-- Pipe.cpp			# 管道的对象封装
|	|-- Pipe.h
|	|-- PipeWrap.cpp		# 管道的包装,windows下由socket模拟
|	|-- SelectWrap.cpp		# select 模型的简单包装 
|	|-- SelectWrap.h
|	|-- Timer.cpp			# 在主线程触发的定时器
|	|-- Timer.h
|
|-- Thread				# 线程模块
|	|-- AsyncTaskThread.cpp		# 后台异步任务线程,可以提交一个可定时重复的任务后台执行
|	|-- AsyncTaskThread.h
|	|-- rwmutex.h			# 读写锁,实验性质的
|	|-- semaphore.h			# 信号量,由条件变量实现
|	|-- spin_mutex.h		# 自旋锁,在低延时临界区适用,单核/低性能设备慎用
|	|-- TaskQueue.h			# functional的任务列队
|	|-- threadgroup.h		# 线程组,移植自boost
|	|-- ThreadPool.h		# 线程池,可以输入functional任务至后台线程执行
|	|-- WorkThreadPool.cpp		# 获取一个可用的线程池(可以加入线程负载均衡分配算法)
|	|-- WorkThreadPool.h
|
|-- Util				# 工具模块
	|-- File.cpp			# 文件/目录操作模块
	|-- File.h
	|-- function_traits.h		# 函数、lambda转functional
	|-- logger.h			# 日志模块
	|-- MD5.cpp			# md5加密模块
	|-- MD5.h
	|-- mini.h			# ini配置文件读写模块,支持unix/windows格式的回车符
	|-- NoticeCenter.h		# 消息广播器,可以广播传递任意个数任意类型参数
	|-- onceToken.h			# 使用RAII模式实现,可以在对象构造和析构时执行一段代码
	|-- ResourcePool.h		# 基于智能指针实现的一个循环池,不需要手动回收对象
	|-- RingBuffer.h		# 环形缓冲,可以自适应大小,适用于GOP缓存等
	|-- SqlConnection.cpp		# mysql客户端
	|-- SqlConnection.h
	|-- SqlPool.h			# mysql连接池,以及简单易用的sql语句生成工具
	|-- SSLBox.cpp			# openssl的黑盒封装,屏蔽了ssl握手细节,支持多线程
	|-- SSLBox.h
	|-- TimeTicker.h		# 计时器,可以用于统计函数执行时间
	|-- util.cpp			# 其他一些工具代码,适配了多种系统
	|-- util.h
	|-- uv_errno.cpp		# 提取自libuv的错误代码系统,主要是为了兼容windows
	|-- uv_errno.h