推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,立即学习
同步和异步,一定要注意,形容的是两者之间的关系,检测IO和读写IO之间的关系。但是在使用异步方式虽然效率高,但是要避免多个线程同时使用一个fd。如果在多线程里在开启poll进行监测,是一个治标不治本的办法。携程就是写同步的代码,走异步的效率。当发送send函数调用后,通过epoll_wait监测是否有数据可读,如果不可读就让出流程。
一个fd 对应一个携程比如有十万可客户端,会对应十万个携程。对于qt刷界面确实不是一个好的解决方案,但是如果是处理网络IO,即时通讯确实是一个好的解决方案。
实时性有没有意义没有立即去读并不代表它实时性不高。
以时间的key作为红黑树,时间最小的作为中序遍历取最下面来平衡就可以。为什么不能用小根堆?小根堆是无序的,而红黑树可以可以将数据以团体的形式进行管理。