在Asio中,work()、require()和make_work_guard()都是用于保持IO服务运行的方法,但是它们在实现上有所不同。
示例代码:
#include
int main() {
boost::asio::io_service io_service;
boost::asio::io_service::work work(io_service);
io_service.run();
return 0;
}
示例代码:
#include
int main() {
boost::asio::io_service io_service;
io_service.post([]{ std::cout << "Work item 1" << std::endl; });
io_service.post([]{ std::cout << "Work item 2" << std::endl; });
boost::asio::require(io_service, boost::asio::io_service::work());
io_service.run();
return 0;
}
下一篇:asio转发服务器