Pārlūkot izejas kodu

keepAlive的时候refreshReg

wuxf 1 gadu atpakaļ
vecāks
revīzija
3713f511a7

+ 1 - 1
servant/libservant/ObjectProxy.cpp

@@ -347,7 +347,7 @@ void ObjectProxy::doKeepAlive()
 	}
 	assert(this->getCommunicatorEpoll()->getThreadId() == this_thread::get_id());
 
-	const vector<AdapterProxy*> & vAdapterProxy = _endpointManger->getActiveAdapters();
+	const vector<AdapterProxy*> & vAdapterProxy = _endpointManger->getActiveAdapters(true);
 
     for(size_t iAdapter=0; iAdapter< vAdapterProxy.size();++iAdapter)
     {

+ 5 - 1
servant/servant/EndpointManager.h

@@ -379,8 +379,12 @@ public:
     /**
      * 获取活跃的服务节点
      */
-    const vector<AdapterProxy*> & getActiveAdapters()
+    const vector<AdapterProxy*> & getActiveAdapters(bool refreshFromReg = false)
     {
+        if (refreshFromReg)
+        {
+            refreshReg(E_DEFAULT, "");
+        }
         return _activeProxys;
     }