请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

主事件循环和从事件循环

老师为什么主事件循环和从事件循环干的是不同的事,不是都调用EventLoop::run函数吗?这种有回调函数的代码有点复杂,该怎么理清调用关系呢?

正在回答 回答被采纳积分+3

2回答

读书林 2024-05-03 16:39:54

主事件循环 在启动的时候就已经决定了它监听lisentfd只做新连接的分配工作,它的可读回调绑定在

TcpServer::newconnection

而这个TcpServer::newconnection 通过取余的方式分配了新连接的clientfd到subloops_线程池中,现在是线程池有多大就有几个Eventloop一一对应,而线程池的每个线程执行多少任务完全完全taskqueue_的大小,现在只是在TcpServer构造函数中创建从事件循环时候addtask了一个事件循环的EventLoop::run,

再可以看下 从循环 和主循环绑定回调函数是完全不一样的 从循环没有管新连接上来的客户端,它只管了onmessage close error sendcomplete



0 回复 有任何疑惑可以回复我~
长歌_吴从周 2024-04-10 13:58:42

想真正理解课程内容,至少要把全部的代码写两遍。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
C++从0实现百万并发Reactor服务器
  • 参与学习       160    人
  • 解答问题       29    个

具备“三高”框架设计能力,突破高级工程师技术瓶颈

了解课程
意见反馈 帮助中心 APP下载
官方微信