Fixed disconnect
This commit is contained in:
parent
10163ffe94
commit
09548d6b3b
2 changed files with 10 additions and 6 deletions
|
@ -36,7 +36,7 @@ public:
|
|||
|
||||
~BoostConnection()
|
||||
{
|
||||
disconnect();
|
||||
|
||||
}
|
||||
|
||||
void connect(const std::string& server, uint16_t port) override
|
||||
|
@ -51,6 +51,8 @@ public:
|
|||
boost::bind(&BoostConnection::handleConnect, this->shared_from_this(),
|
||||
boost::asio::placeholders::error));
|
||||
|
||||
|
||||
|
||||
std::thread([this]() { ioService_.run(); }).detach();
|
||||
}
|
||||
|
||||
|
@ -67,11 +69,8 @@ public:
|
|||
|
||||
void disconnect() override
|
||||
{
|
||||
if (isConnected()) {
|
||||
LOG_DEBUG("[%s:%d] Disconnecting", getConnectedIp().c_str(), getConnectedPort());
|
||||
socket_.get().lowest_layer().close();
|
||||
}
|
||||
|
||||
ioService_.stop();
|
||||
}
|
||||
|
||||
|
|
|
@ -322,6 +322,11 @@ void Client::close()
|
|||
{
|
||||
LOG_DEBUG("close");
|
||||
|
||||
if (m_connection && m_connection) {
|
||||
LOG_DEBUG("disconnecting");
|
||||
m_connection->disconnect();
|
||||
}
|
||||
|
||||
m_connection.reset();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue