使用 Boost 的 ASIO,我如何等待 Windows 事件?
当 Windows 事件发出信号时,我的程序需要正常终止。我正在使用 Boost 的 ASIO 库作为它的套接字。我只有一个 io_service 对象。如何使用 io_service '注册'此事件句柄,以便在事件发出信号时调用回调?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您正在寻找 Windows 上 Boost.Asio 的终止处理,您可以查看示例 此处。
简而言之,您需要处理获胜事件并在系统上调用停止。
这使用了一个函数对象:
您需要将其绑定到系统的关闭/停止例程。
If you're looking for termination handling on Windows for Boost.Asio you can take a look at the examples here.
In short, you need to handle the win events and call stop on your system.
This uses a function object:
that you need to bind to your system's shutdown/stop routine.
从 Boost 1.49 开始,当事件发出信号时,似乎可以调用句柄,请参阅 http://www.boost.org/doc/libs/1_49_0/doc/html/boost_asio/overview/windows/object_handle.html。
Beginning with Boost 1.49 it appears that it is possible to invoke a handle when an event becomes signaled, see http://www.boost.org/doc/libs/1_49_0/doc/html/boost_asio/overview/windows/object_handle.html.