shm: reduce shm contention when dealing with ack queues

This commit is contained in:
Alexey Rybalchenko
2021-04-22 18:32:39 +02:00
parent 4e466514d2
commit c85d6e079c
4 changed files with 88 additions and 44 deletions

View File

@@ -309,6 +309,8 @@ class Message final : public fair::mq::Message
}
if (fRegionPtr) {
fRegionPtr->InitializeQueues();
fRegionPtr->StartSendingAcks();
fRegionPtr->ReleaseBlock({fMeta.fHandle, fMeta.fSize, fMeta.fHint});
} else {
LOG(warn) << "region ack queue for id " << fMeta.fRegionId << " no longer exist. Not sending ack";
@@ -324,7 +326,7 @@ class Message final : public fair::mq::Message
Deallocate();
fAlignment = 0;
fManager.DecrementMsgCounter(); // TODO: put this to debug mode
fManager.DecrementMsgCounter();
}
};