src/pubsub.h
@@ -23,18 +23,24 @@ #include <atomic> #include <mutex> #include <vector> #include <unordered_map> #include <set> namespace bhome_shm { // publish/subcribe manager. class BusManager { SharedMemory &shm_; ShmMsgQueue busq_; std::atomic<bool> run_; std::vector<std::thread> workers_; std::mutex mutex_; typedef std::set<MQId> Clients; std::unordered_map<std::string, Clients> records_; bool StopNoLock(); void OnMsg(const BHMsg &msg); public: BusManager(SharedMemory &shm); ~BusManager();