采用队列对客户的请求进行保存,采用先进先出的处理方式,调用push_back添加请求到队列,调用front获取到队列头部的引用,之前调用empty判断队列是否为空,因为front返回的是引用,所以获取出来之后必须保存,然后调用pop_front删除队头的消息
代码
#include <list>
std::list<std::string> m_listMsg;
m_listMsg.push_back(mg);
if (m_listMsg.empty()) return;
std::string msg = m_listMsg.front();
m_listMsg.pop_front();
注意:加锁对数据的读写保护是非常必须的,为了跨平台使用boost::mutex,可以参考其他的章节
本文转自fengyuzaitu 51CTO博客,原文链接:http://blog.51cto.com/fengyuzaitu/1978711,如需转载请自行联系原作者