继承自 basic_socket。
取消与套接字关联的所有异步操作。
void cancel( boost::system::error_code & ec);
此函数将导致所有未完成的异步连接、发送和接收操作立即完成,并且已取消操作的处理程序将收到 boost::asio::error::operation_aborted 错误。
用于指示发生何种错误(如果有)。
除非定义了 BOOST_ASIO_ENABLE_CANCELIO,否则在 Windows XP、Windows Server 2003 和更早版本的 Windows 上运行 cancel() 调用时,将始终因 boost::asio::error::operation_not_supported 而失败。但是,CancelIo 函数有两个问题,在使用前应予以考虑。
为了实现可移植的取消,请考虑使用以下替代方法之一
close() 函数可同时取消挂起的操作并关闭套接字。在 Windows Vista、Windows Server 2008 及更高版本上运行时,将始终使用 CancelIoEx 函数。此函数没有上述问题。