shm: optimize monitor heartbeats

This commit is contained in:
Alexey Rybalchenko
2021-06-09 12:54:40 +02:00
parent 3da95927c7
commit 2db1538285
5 changed files with 43 additions and 51 deletions

View File

@@ -117,7 +117,7 @@ class Monitor
private:
void PrintHelp();
void Watch();
void ReceiveHeartbeats();
void CheckHeartbeats();
void CheckSegment();
void Interactive();
void SignalMonitor();
@@ -131,12 +131,10 @@ class Monitor
unsigned int fTimeoutInMS;
unsigned int fIntervalInMS;
std::string fShmId;
std::string fControlQueueName;
std::atomic<bool> fTerminating;
std::atomic<bool> fHeartbeatTriggered;
std::chrono::high_resolution_clock::time_point fLastHeartbeat;
std::atomic<std::chrono::high_resolution_clock::time_point> fLastHeartbeat;
std::thread fSignalThread;
std::unordered_map<std::string, std::chrono::high_resolution_clock::time_point> fDeviceHeartbeats;
};
} // namespace fair::mq::shmem