// reference_counted.cpp
// ~~~~~~~~~~~~~~~~~~~~~
//
-// Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com)
+// Copyright (c) 2003-2017 Christopher M. Kohlhoff (chris at kohlhoff dot com)
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
: public boost::enable_shared_from_this<session>
{
public:
- session(boost::asio::io_service& io_service)
- : socket_(io_service)
+ session(boost::asio::io_context& io_context)
+ : socket_(io_context)
{
}
class server
{
public:
- server(boost::asio::io_service& io_service, short port)
- : io_service_(io_service),
- acceptor_(io_service, tcp::endpoint(tcp::v4(), port))
+ server(boost::asio::io_context& io_context, short port)
+ : io_context_(io_context),
+ acceptor_(io_context, tcp::endpoint(tcp::v4(), port))
{
- session_ptr new_session(new session(io_service_));
+ session_ptr new_session(new session(io_context_));
acceptor_.async_accept(new_session->socket(),
boost::bind(&server::handle_accept, this, new_session,
boost::asio::placeholders::error));
new_session->start();
}
- new_session.reset(new session(io_service_));
+ new_session.reset(new session(io_context_));
acceptor_.async_accept(new_session->socket(),
boost::bind(&server::handle_accept, this, new_session,
boost::asio::placeholders::error));
}
private:
- boost::asio::io_service& io_service_;
+ boost::asio::io_context& io_context_;
tcp::acceptor acceptor_;
};
return 1;
}
- boost::asio::io_service io_service;
+ boost::asio::io_context io_context;
using namespace std; // For atoi.
- server s(io_service, atoi(argv[1]));
+ server s(io_context, atoi(argv[1]));
- io_service.run();
+ io_context.run();
}
catch (std::exception& e)
{