我正在使用boost和boost.asio的最新版本。
我有这个类:如何连接/断开服务器?
enum IPVersion
{
IPv4,
IPv6
};
template <IPVersion version = IPv4>
class Connection
{
private:
boost::asio::io_service io_service;
boost::asio::ip::tcp::resolver resolver;
boost::asio::ip::tcp::resolver::query query;
boost::asio::ip::tcp::resolver::iterator iterator;
public:
Connection(std::string host, std::string port);
virtual void connect() { iterator = resolver.resolve(query); } // Is this the moment where the client actually connects?
virtual void disconnect() { /* what goes in here? */ }
};
我应该叫io_service::stop()
,然后在我的Connection::connect()
电话io_service::reset()
第一之前,我解决这个查询?