From 3cb743b750112044e8f9fbb5fbcb6991caf5fcbd Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Thu, 23 Apr 2020 12:14:05 +0200 Subject: [PATCH] Create context in common thread --- sf-writer/sf_h5_writer.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sf-writer/sf_h5_writer.cpp b/sf-writer/sf_h5_writer.cpp index 9abede1..3a75cf0 100644 --- a/sf-writer/sf_h5_writer.cpp +++ b/sf-writer/sf_h5_writer.cpp @@ -17,10 +17,10 @@ using namespace core_buffer; void receive_replay( const string ipc_prefix, const size_t n_modules, - RingBuffer& ring_buffer) + RingBuffer& ring_buffer, + void* ctx) { - auto ctx = zmq_ctx_new(); - zmq_ctx_set (ctx, ZMQ_IO_THREADS, WRITER_ZMQ_IO_THREADS); + void* sockets[n_modules]; for (size_t i=0; i ring_buffer(5); - string ipc_prefix = "ipc://sf-replay-"; size_t n_modules = 32; + string ipc_prefix = "ipc://sf-replay-"; + auto ctx = zmq_ctx_new(); + zmq_ctx_set (ctx, ZMQ_IO_THREADS, WRITER_ZMQ_IO_THREADS); thread replay_receive_thread( receive_replay, ipc_prefix, n_modules, - ref(ring_buffer)); + ref(ring_buffer), + ctx); H5Writer writer(output_file); writer.create_file();