本文共 588 字,大约阅读时间需要 1 分钟。
任何一个线程,只要创建并运行了EventLoop,都称之为IO线程
IO线程不一定是主线程
muduo并发模型one loop per thread + threadpool
(1)一个程序有多个IO线程,这些IO线程可以使用IO线程池来管理。所以是IO线程池(主要处理IO事件,调用EventLoop.runInLoop()也可以执行计算任务)+计算线程池(计算任务) (2)IO线程池所对应的类是EventLoopThreadpool类为了方便今后使用,定义了EventLoopThread类,该类封装了IO线程,功能:
(1)EventLoopThread创建了一个线程 (2)在线程函数中创建了一个EvenLoop对象并调用EventLoop::loop,处于事件循环的状态eg:30\jmuduo\muduo\net\EventLoopThread.h
30\jmuduo\muduo\net\EventLoopThread.cc 30\jmuduo\muduo\net\CMakeLists.txt 30\jmuduo\muduo\net\TimerQueue.cceg测试:30\jmuduo\tests\Reactor_test06.cc
30\jmuduo\tests\CMakeLists.txt测试:
转载地址:http://lmiws.baihongyu.com/