diff --git a/core-writer/include/ZmqReceiver.hpp b/core-writer/include/ZmqReceiver.hpp index 0d66d0d..664dcfe 100644 --- a/core-writer/include/ZmqReceiver.hpp +++ b/core-writer/include/ZmqReceiver.hpp @@ -62,6 +62,8 @@ class ZmqReceiver void connect(); + void disconnect(); + std::shared_ptr read_json_header(const std::string& header); std::pair, char*> receive(); diff --git a/core-writer/src/receiver/ZmqReceiver.cpp b/core-writer/src/receiver/ZmqReceiver.cpp index 6484259..c998899 100644 --- a/core-writer/src/receiver/ZmqReceiver.cpp +++ b/core-writer/src/receiver/ZmqReceiver.cpp @@ -96,6 +96,20 @@ void ZmqReceiver::connect() receiver->connect(connect_address); } +void ZmqReceiver::disconnect() +{ + #ifdef DEBUG_OUTPUT + using namespace date; + using namespace chrono; + cout << "[" << system_clock::now() << "]"; + cout << "[ZmqReceiver::disconnect]"; + cout << " Disconnect." << endl; + #endif + + receiver->disconnect(connect_address); + context->close(); +} + pair, char*> ZmqReceiver::receive() { if (!receiver) {