diff options
| author | Carl Hetherington <cth@carlh.net> | 2025-05-16 21:59:31 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2025-05-28 00:33:55 +0200 |
| commit | 9057c23f81e5ace350cca5a7e5e78bd9278f320c (patch) | |
| tree | b38d77f23bf75192af20fb6f9a733323cae78df6 /src/lib | |
| parent | e1a84dfaefa7e4bf900e93686f7e954852eea31b (diff) | |
Cleanup: make inbound_thread a member function.
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/grok/messenger.cc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/lib/grok/messenger.cc b/src/lib/grok/messenger.cc index 44606d0f8..d9b3692e0 100644 --- a/src/lib/grok/messenger.cc +++ b/src/lib/grok/messenger.cc @@ -128,22 +128,26 @@ Messenger::outbound_thread(const std::string &sendBuf, Synch* synch) } -static void inboundThread(Messenger* messenger, const std::string &receiveBuf, Synch* synch) +void +Messenger::inbound_thread(const std::string &receiveBuf, Synch* synch) { grk_handle shm_fd = 0; char* receive_buffer = nullptr; - if(!SharedMemoryManager::initShm(receiveBuf, messageBufferLen, &shm_fd, &receive_buffer)) + if (!SharedMemoryManager::initShm(receiveBuf, messageBufferLen, &shm_fd, &receive_buffer)) { return; - while(messenger->running) - { + } + + while (running) { synch->wait(SYNCH_SENT); - if(!messenger->running) + if (!running) { break; + } auto message = std::string(receive_buffer); synch->post(SYNCH_RECEIVE_READY); - messenger->receiveQueue.push(message); + receiveQueue.push(message); } + SharedMemoryManager::deinit_shm(receiveBuf, messageBufferLen, shm_fd, &receive_buffer); } @@ -155,7 +159,7 @@ Messenger::startThreads() outbound = std::thread(&Messenger::outbound_thread, this, init_.outboundMessageBuf, outboundSynch_); inboundSynch_ = new Synch(init_.inboundSentSynch, init_.inboundReceiveReadySynch); - inbound = std::thread(inboundThread, this, init_.inboundMessageBuf, inboundSynch_); + inbound = std::thread(&Messenger::inbound_thread, this, init_.inboundMessageBuf, inboundSynch_); for (size_t i = 0; i < init_.numProcessingThreads_; ++i) { processors_.push_back(std::thread(&Messenger::processor_thread, this)); |
