From 2183e6b3dbe5840eb366e001084b352706053716 Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Fri, 12 Jan 2018 10:23:12 +0100 Subject: [PATCH] Fix writer stopping issue (SIGINT) --- src/h5_zmq_writer.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/h5_zmq_writer.cpp b/src/h5_zmq_writer.cpp index f9cf66d..2936d5c 100644 --- a/src/h5_zmq_writer.cpp +++ b/src/h5_zmq_writer.cpp @@ -16,7 +16,7 @@ using namespace std; void write(WriterManager *manager, RingBuffer *ring_buffer, string output_file) { - HDF5ChunkedWriter writer(output_file, config::dataset_name); + HDF5ChunkedWriter writer(output_file, manager->get_parameters()["dataset_name"]); // Run until the running flag is set or the ring_buffer is empty. while(manager->is_running() || !ring_buffer->is_empty()) { @@ -117,6 +117,9 @@ void run_writer(string connect_address, string output_file, uint64_t n_images, u cout << "[h5_zmq_writer::run_writer] Rest API stopped." << endl; #endif + // In case SIGINT stopped the rest_api. + manager.stop(); + receiver_thread.join(); writer_thread.join();