Hi~早上好!今日小编要推荐的是一个封装在 Tcp 协议上的 Proactor 模式 multi-thread 网络库 —— CppNet。包含 OS 接口调用、回调处理、定时器、缓存管理等,只导出了最少量的接口,其声明都类似系统 socket API,对客户端而言,只新增了一个 buffer 类型,十分简单;还采用了性能最优的 epoll 和 IOCP 做事件驱动,惊群处理交由内核。每个连接都独享一个内存池,从内存池中申请的内存都由智能指针管理,处理快速;在结构上分为事件驱动,会话管理,接口三层,通过回调向上通知。模块之间职责分工明确,最大的类不超过 500 行代码,模块清晰。从操作系统到应用层的所有网络细节都有,非常便于初学者学习和实践。
hellogithub.com
展开
评论