【问题标题】:How to cancel asynchronous read/write without closing the socket?如何在不关闭套接字的情况下取消异步读/写? 【发布时间】:2010-12-28 13:42:32 【问题描述】: 如何在不关闭套接字的情况下取消异步读/写? 我使用 boost.asio。 谢谢。 【问题讨论】: 标签: c++ boost-asio 【解决方案1】: 使用socket::cancel。 取消所有与套接字关联的异步操作。 【讨论】: 但是,我们从链接文档中注意到: * 它只会取消在当前线程中启动的异步操作。 * 它可以看起来完成而没有错误,但取消未完成操作的请求可能会被操作系统静默忽略。 @SamLiddicott 请注意,这仅适用于 CancelIo (Windows),如果由 BOOST_ASIO_ENABLE_CANCELIO 启用 @SamMiller 这真是一种解脱!感谢您的澄清!