summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-05-16 21:59:31 +0200
committerCarl Hetherington <cth@carlh.net>2025-05-28 00:33:55 +0200
commit9057c23f81e5ace350cca5a7e5e78bd9278f320c (patch)
treeb38d77f23bf75192af20fb6f9a733323cae78df6 /src/lib
parente1a84dfaefa7e4bf900e93686f7e954852eea31b (diff)
Cleanup: make inbound_thread a member function.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/grok/messenger.cc18
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));