9 io_service_ = std::make_shared<boost::asio::io_service>();
25 tcp::resolver::iterator endpoint_iterator = resolver.resolve(query);
26 tcp::resolver::iterator end;
28 boost::system::error_code
error = boost::asio::error::host_not_found;
29 while (
error && endpoint_iterator != end)
36 throw boost::system::system_error(
error);
39 catch (std::exception& e)
41 std::cerr << e.what() << std::endl;
57 boost::system::error_code
error;
58 len =
socket_->read_some(boost::asio::buffer(buf),
error);
59 if (
error == boost::asio::error::eof)
68 timer_->expires_from_now(boost::posix_time::seconds(expiry_time));
69 timer_->async_wait([
this, &expiry_time](
const boost::system::error_code&
error) {
71 if (
error.message() ==
"Success")
73 std::cout <<
"Time out: No packets received in " << expiry_time <<
" seconds" << std::endl;
77 boost::optional<boost::system::error_code> read_result;
79 socket_->async_read_some(boost::asio::buffer(buf),
80 [&len, &read_result](
const boost::system::error_code&
error,
size_t received) {
82 read_result.reset(
error);
87 if (read_result && read_result->value() == 0)