#20210824 EventLoopThread源码阅读(muduo::net)
如果有问题,欢迎交流!!!
EventLoopThread Class创建一个线程执行loop()循环,并返回该EventLoop对象的地址。EventLoopThread Class控制其创建的线程和loop()循环的生命期。
数据成员
EventLoop* loop_
本
EventLoopThread Class所创建的EventLoop对象所在的地址
bool exiting_
初始化为
false,析构函数中设为true
Thread thread_
负责执行
loop()循环的线程
MutexLock mutex
锁,保护
loop_和cond_
Condition cond_
条件变量,
thread_通过cond_通知父线程EventLoop对象创建完成。
ThreadInitCallback callback_
以
EventLoop&为参数,由thread_执行
成员函数
EventLoopThread(const ThreadInitCallback& cb = ThreadInitCallback(),const string& name = string());
构造函数,初始化变量,初始化线程
~EventLoopThread()
析构函数,退出
loop()循环,退出线程
EventLoop* startLoop()
开始子线程的运行,获得新建的
EventLoop对象,并返回
void threadFunc()
子线程执行的函数,在其中执行
callback_,创建EventLoop对象,并调用loop()
701

被折叠的 条评论
为什么被折叠?



