Move NotifyNumConnectionsChanged logic to private method.

This commit is contained in:
Patrick Strateman 2018-09-24 16:30:53 -04:00 committed by Alexander Block
parent f9bf204829
commit 6eef194443
2 changed files with 18 additions and 11 deletions

View File

@ -1228,9 +1228,22 @@ void CConnman::AcceptConnection(const ListenSocket& hListenSocket) {
} }
} }
void CConnman::NotifyNumConnectionsChanged()
{
size_t vNodesSize;
{
LOCK(cs_vNodes);
vNodesSize = vNodes.size();
}
if(vNodesSize != nPrevNodeCount) {
nPrevNodeCount = vNodesSize;
if(clientInterface)
clientInterface->NotifyNumConnectionsChanged(nPrevNodeCount);
}
}
void CConnman::ThreadSocketHandler() void CConnman::ThreadSocketHandler()
{ {
unsigned int nPrevNodeCount = 0;
while (!interruptNet) while (!interruptNet)
{ {
// //
@ -1297,16 +1310,7 @@ void CConnman::ThreadSocketHandler()
} }
} }
} }
size_t vNodesSize; NotifyNumConnectionsChanged();
{
LOCK(cs_vNodes);
vNodesSize = vNodes.size();
}
if(vNodesSize != nPrevNodeCount) {
nPrevNodeCount = vNodesSize;
if(clientInterface)
clientInterface->NotifyNumConnectionsChanged(nPrevNodeCount);
}
// //
// Find which sockets have data to receive // Find which sockets have data to receive
@ -2506,6 +2510,7 @@ CConnman::CConnman(uint64_t nSeed0In, uint64_t nSeed1In) :
setBannedIsDirty = false; setBannedIsDirty = false;
fAddressesInitialized = false; fAddressesInitialized = false;
nLastNodeId = 0; nLastNodeId = 0;
nPrevNodeCount = 0;
nSendBufferMaxSize = 0; nSendBufferMaxSize = 0;
nReceiveFloodSize = 0; nReceiveFloodSize = 0;
flagInterruptMsgProc = false; flagInterruptMsgProc = false;

View File

@ -474,6 +474,7 @@ private:
void ThreadOpenConnections(std::vector<std::string> connect); void ThreadOpenConnections(std::vector<std::string> connect);
void ThreadMessageHandler(); void ThreadMessageHandler();
void AcceptConnection(const ListenSocket& hListenSocket); void AcceptConnection(const ListenSocket& hListenSocket);
void NotifyNumConnectionsChanged();
void ThreadSocketHandler(); void ThreadSocketHandler();
void ThreadDNSAddressSeed(); void ThreadDNSAddressSeed();
void ThreadOpenMasternodeConnections(); void ThreadOpenMasternodeConnections();
@ -549,6 +550,7 @@ private:
std::list<CNode*> vNodesDisconnected; std::list<CNode*> vNodesDisconnected;
mutable CCriticalSection cs_vNodes; mutable CCriticalSection cs_vNodes;
std::atomic<NodeId> nLastNodeId; std::atomic<NodeId> nLastNodeId;
unsigned int nPrevNodeCount;
/** Services this instance offers */ /** Services this instance offers */
ServiceFlags nLocalServices; ServiceFlags nLocalServices;