作者回复: 我想应该是可以满足你的要求的:)
作者回复: 这是框架设计的基本思想,我在后面的框架设计中也是这样的,欢迎继续阅读,你会有更多收获。
作者回复: 加油~
作者回复: 先学习一下Linux下的安装、配置、管理,把工作环境放到Linux下面,让Linux成为你的工作效率机器;
其次,慢慢学习Bash,感受一下Linux的能力;
接下来就是学习一些 Linux下的程序设计,如I/O、网络等。
如果你能把这篇系列的所有代码都改一遍,运行一遍,就是一个良好的开头。
加油~
作者回复: 不要着急,仔细揣摩一下。event_loop就是一个无限事件循环处理线程,说穿了没啥神秘的....
作者回复: 这就是两个普通的producer-consumer线程关系,使用队列+锁的方式是一个比较常见的实现方式。
作者回复: 第一个问题,回调函数和套接字对应的,通过套接字找到对应的回调函数;
第二个问题,因为是事件驱动,不需要分配固定的资源,仅仅使用几个线程就可以支持上万的连接,每个线程的利用率得到了最大提升。
作者回复: 没有。
作者回复: github上回复了。
作者回复: 需要加入pthread这个lib。
参考 lib/CMakeLists.txt下面的这段:
target_link_libraries(yolanda pthread)
作者回复: 赞赞赞。
作者回复: 我这里的版本比libevent要简单许多,在这个基础上你可以再拿一些libevent的功能来,读懂libevent是需要花一点时间的
作者回复: 整一个MR来。
作者回复: 你是问题最多的,我想也是收获最大的。
调试、调试、调试,重要的问题讲三遍 :)
作者回复: 因为如果客户不把TCP连接tear down掉,我们也不知道什么时候会继续进行数据的发送,有可能每隔2分钟发送一个heartbeat包,也是可能的。
作者回复: 第四篇会详细进行分解讲述。
作者回复: 👍
作者回复: 写完成之后,你可以打印一段话看看是否被回调到。