muduo源码分析
冯巩2.0
这个作者很懒,什么都没留下…
展开
-
muduo源码分析 EventLoopThreadPool 类
文章目录构造与析构start 开启线程池getNextLoop 采用轮询的方式分配EventLoopgetLoopForHash采用hash方式分配EventLoopgetAllLoops 返回所有的EventLoop EventLoopThreadPool 是一个线程池,只不过该线程池有一点特殊,该线程池中的每一个线程都要执行EventLoop进行文件描述符的监听。 此时一个线程用于管理分配线程...原创 2019-05-07 21:36:45 · 1230 阅读 · 0 评论 -
muduo 源码分析 EventLoop 类
文章目录原创 2019-05-07 21:37:08 · 1681 阅读 · 0 评论 -
muduo 源码分析底层IO类
文章目录原创 2019-05-07 21:37:41 · 1045 阅读 · 0 评论 -
muduo源码分析 Channel类
文章目录原创 2019-05-07 21:37:54 · 1337 阅读 · 0 评论 -
muduo源码分析TcpServer接收一个链接前的准备工作
文章目录TcpServer的构造函数setThreadNum 设置线程池池的线程数start 开始监听连接请求Acceptor的构造函数listen 这里不说muduo 的架构模式,只介绍TcpServer的函数调用关系 EventLoop : 事件循环器,底层通过IO复用实现,用于监听所有的文件描述符 Acceptor:用于接收一个新的连接, Channel : 用于事件的分发 (当检测到有事件...原创 2019-05-07 21:38:12 · 1224 阅读 · 0 评论 -
muduo源码分析 TcpSerer 接收一个链接
文章目录Channel 基本的成员变量handleEvent事件分发Acceptor::handleRead 处理读事件TcpServer::newConnection 处理新的连接 前面说了链接前的准备工作,下面说一下链接的过程。 当一个链接发起的时候,EventLoop首先将产生的就绪事件的文件描述符取出,并且取出对应的该文件描述符对应的Channel,看一个Channel结构中记录了什么。 ...原创 2019-05-07 21:38:37 · 1090 阅读 · 0 评论 -
muduo源码分析线程池
文章目录构造函数析构函数start 线程池的启动函数stop 停止线程池run 线程池中添加一个任务take 线程池中的线程从任务队列取一个线程runInThread 线程池中的线程的执行的区域 线程池的实现原理: 在并发程序设计中,由于线程的反复创建于销毁是非常消耗时间的,在存在大量的线程的创建于销毁的程序中,我们可以事先创建出一部分线程,然后管理这些线程去处理我们的任务,这样可以节省一大部分反...原创 2019-05-07 21:38:59 · 1372 阅读 · 0 评论 -
muduo 网络库reactor 模式下 事件循环器的实现
文章目录编译运行总结 这里是实现的代码 https://download.csdn.net/download/qq_43390943/11184422 文件 编译 运行 总结 /* * 主要的设计思路: * 1、首先要熟悉reactor的整个设计的模式,主线程负责链接新的客户端,在线程池中获取一个EventLoop来监听这个新产生的文件描述符 * 2、一个线程可以监听多个文件描述符,当...原创 2019-05-17 15:43:37 · 1260 阅读 · 0 评论