我们有一个基于 boost asio 的网络代码,它连接到远程端。本地端可以是 tcp4 套接字或 unix 套接字。
是否有可以同时容纳这两种类型的 boost 插槽的类型名称?(例如,两者的基类之类的东西?)。目前我们的代码
boost::asio::generic::stream_protocol::socket
用于 tcp 套接字和
boost::asio::local::stream_protocol::socket
unix 套接字。
我们有一个基于 boost asio 的网络代码,它连接到远程端。本地端可以是 tcp4 套接字或 unix 套接字。
是否有可以同时容纳这两种类型的 boost 插槽的类型名称?(例如,两者的基类之类的东西?)。目前我们的代码
boost::asio::generic::stream_protocol::socket
用于 tcp 套接字和
boost::asio::local::stream_protocol::socket
unix 套接字。
实际上,ip::tcp::socket
tcp 套接字有一个专用类型。至于generic::stream_protocol::socket
,它是在运行时接受套接字协议和族的通用流套接字类型,因此您可以将它用于您需要的两种类型:
generic::stream_protocol::socket ipc(io_, generic::stream_protocol(AF_UNIX, 0));
generic::stream_protocol::socket tcp(io_, generic::stream_protocol(AF_INET, IPPROTO_TCP));