diff --git a/include/DirectCommunicationClient.hpp b/include/DirectCommunicationClient.hpp index 2760ea4..5931eb8 100644 --- a/include/DirectCommunicationClient.hpp +++ b/include/DirectCommunicationClient.hpp @@ -42,7 +42,7 @@ namespace DirectCommunication std::thread Worker_; std::atomic_bool stopWorker_; - std::atomic_bool isConnected = true; + std::atomic_bool isConnected = false; std::function MessageHandle_ = nullptr; diff --git a/src/DirectCommunicationClient.cpp b/src/DirectCommunicationClient.cpp index 50ddafb..7edc8a0 100644 --- a/src/DirectCommunicationClient.cpp +++ b/src/DirectCommunicationClient.cpp @@ -19,6 +19,7 @@ namespace DirectCommunication socket_.connect("tcp://"+serverAddress_+":"+std::to_string(port_)); socket_.set(zmq::sockopt::rcvtimeo,100); + socket_.set(zmq::sockopt::sndtimeo,500); Worker_ = std::thread(&DirectCommunicationClient::workerFunc_,this); stopWorker_ = false; @@ -74,7 +75,7 @@ namespace DirectCommunication if (recv > 0) { - + isConnected = true; if (msg.to_string() == "CLOSE") { isConnected = false;