从Boost.ASIO的套接字类中分离本机套接字

Col*_*nee 6 c++ sockets boost boost-asio

是否可以从Boost.ASIO的套接字类中分离本机套接字?如果是这样,怎么办呢?我似乎无法在文档中找到任何明显的东西.

快速概述我正在尝试完成的任务:我有一个使用Boost.ASIO进行连接并进行协商的类,然后在成功时传回本机Windows SOCKET或在失败时传回0.

除非我弄错了,否则当我的boost :: asio :: basic_socket被破坏时,本机套接字将被关闭并释放.

Col*_*nee 2

回答我自己的问题。

Windows有一个WSADuplicateSocket函数,可以用来复制本机套接字。底层套接字将保持打开状态,直到该套接字的所有描述符都被释放为止。

http://msdn.microsoft.com/en-us/library/ms741565(VS.85).aspx