1. 多线程
(1) 在主线程中利用epoll进程数据的接收,将收到的数据包(包头+包体)给加上消息头(包含连接池的地址)后 扔到消息队列中去;
(2)多个线程从消息队列中取数据进行处理,每条消息只能有1个线程成功取到并处理。(因此操作消息队列的线程之间是互斥的)。
总之:主线程往消息队列中放客户端发来的数据,一批线程到消息队列中取数据。
2. 线程池
提前创建好一堆线程,用一个类来统一管理和调度。 来一个任务,从中找一个空闲的线程去处理,完成以后在回收,之后再利用。
优点:事先创建好线程,避免动态创建线程,提高程序稳定性。提升运行效率。
标签:逻辑,框架,队列,处理,中取,线程,消息,服务器,数据 From: https://www.cnblogs.com/dkhlaojogo/p/17080831.html