76、仿ASIO实现的Linux c++服务器------服务器源码解析----云视频服务项目

仿ASIO实现的Linux c++服务器

流程

配置文件

模板全特化

需要通用模板做声明

返回一个成员函数,值为模板类型

整个配置管理类是单例模式

Defer RAII

服务器流程

ET模式是边缘触发模式,只会触发一次,当接收缓冲区由空变为有数据,就会触发一次。如果我们不把数据读完,将来不会再次触发。

ET模式需要循环读取,直到读空,读空方式为EAGAIN /EWOULDBLOCK

LT模式,只要TCP缓冲区有数据,就会触发事件,所以可以不用读空,每次都多少取决于自己的逻辑。建议还是读空。

线程池是什么?

线程池 相关文档,我自己实现的 77、线程池原理和实现------服务器源码解析----云视频服务项目-CSDN博客

详细的结构图:

78、框架分析------服务器源码解析----云视频服务项目-CSDN博客

相关推荐
TCW11211 小时前
AI底层系列:用C++实现线性代数的公式推导与算法设计-6.线性方程组的解集
c++·人工智能·算法
拳里剑气2 小时前
C++算法:链表
c++·算法·链表
superkcl20222 小时前
【QT Thread】
c++·qt
旖-旎2 小时前
《LeetCode 417 太平洋大西洋水流问题 FloodFill DFS 解法》
c++·算法·深度优先·力扣·floodfill
鱼子星_2 小时前
C++从零开始系列篇(二):C++入门——函数重载,引用,inline与nullptr
开发语言·c++·笔记
小灰灰搞电子2 小时前
C++ boost::circular_buffer 详解:原理、用法与实战
开发语言·c++·boost
星恒随风3 小时前
C++ string 类详解:常用接口、OJ 场景与模拟实现中的深浅拷贝
开发语言·c++·笔记·学习·状态模式
程序喵大人3 小时前
【C++并发系列】第二章:锁解决了什么问题?
开发语言·c++·并发编程·
天天代码码天天3 小时前
用 TensorRT 加速 PP-OCR:一套 C++ DLL + C# 调用的高性能 OCR 推理方案
c++·c#·ocr