我正在使用boost asio开发一个tcp服务器进程,它侦听客户端连接。客户端需要发送部分数据包。服务器进程无法处理数据包,直到它从客户端收到整个数据包(标头,数据和页脚)。如何检索升压asio套接字文件描述符
为了处理部分数据包,服务器进程需要将来自每个客户端连接的数据包(或部分数据包)推送到队列中。服务器将维护每个客户端连接的队列。
现在我的问题是如何使用boost asio时获取套接字文件描述符。我打算使用来自套接字文件描述符的整数值并创建一个std :: map容器来处理每个客户端连接的队列。
的std ::地图< INT,的std :: deque的<的std :: string>
如果检索套接字文件描述符是不可行的,这可能是为了获得最佳性能的替代品。我需要使用
std :: map < tcp :: socket *,std :: deque < std :: string >>>?
在此先感谢。
谢谢大卫。通过在与每个客户端连接关联的对象中维护队列,我对设计做了一些修改。 – Rak 2012-08-15 17:24:10