From 60b9594fa3ea5c96e3d90a138ac3854705e1a74e Mon Sep 17 00:00:00 2001 From: lichao <lichao@aiotlink.com> Date: 星期二, 18 五月 2021 11:20:37 +0800 Subject: [PATCH] trivial. --- src/topic_node.h | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/topic_node.h b/src/topic_node.h index 338a6e3..be82cf6 100644 --- a/src/topic_node.h +++ b/src/topic_node.h @@ -78,7 +78,7 @@ MQId ssn() { return SockNode().id(); } bool ClientQueryRPCTopic(const Topic &topic, BHAddress &addr, const int timeout_ms); typedef MsgQueryTopicReply::BHNodeAddress NodeAddress; - int QueryRPCTopics(const Topic &topic, std::vector<NodeAddress> &addr, const int timeout_ms); + int QueryTopicServers(const Topic &topic, std::vector<NodeAddress> &addr, const int timeout_ms); const std::string &proc_id() { return info_.proc_id(); } typedef BHAddress Address; @@ -130,7 +130,16 @@ ShmSocket &SockClient() { return *sockets_[eSockClient]; } ShmSocket &SockServer() { return *sockets_[eSockServer]; } + void SetProcIndex(int index) + { + proc_index_ = index; + for (int i = eSockStart; i < eSockEnd; ++i) { + sockets_[i]->SetNodeProc(index, i); + } + } + enum State { + eStateUninited, eStateUnregistered, eStateOnline, eStateOffline // heartbeat fail. @@ -138,12 +147,13 @@ void state(const State st) { state_.store(st); } void state_cas(State expected, const State val) { state_.compare_exchange_strong(expected, val); } State state() const { return state_.load(); } - bool IsOnline() { return Init() && state() == eStateOnline; } + bool IsOnline() { return state() == eStateOnline; } bool Init(); bool Valid() const { return !sockets_.empty(); } std::mutex mutex_; MQId ssn_id_ = 0; std::atomic<State> state_; + int proc_index_ = -1; TopicQueryCache topic_query_cache_; }; -- Gitblit v1.8.0