throttle peer_status a little bit, send an update every 175ms (similar to the TUI update speed);

pull/72/head
Bryan Biedenkapp 1 year ago
parent b190ce3628
commit cee2995389

@ -158,6 +158,8 @@ int HostWS::run()
peerListUpdate.start(); peerListUpdate.start();
Timer affListUpdate(1000U, 10U); Timer affListUpdate(1000U, 10U);
affListUpdate.start(); affListUpdate.start();
Timer peerStatusUpdate(1000U, 0U, 175U);
peerStatusUpdate.start();
setNetDataEventCallback([=](json::object obj) { netDataEvent(obj); }); setNetDataEventCallback([=](json::object obj) { netDataEvent(obj); });
@ -182,6 +184,10 @@ int HostWS::run()
} }
// update peer status // update peer status
peerStatusUpdate.clock(ms);
if (peerStatusUpdate.isRunning() && peerStatusUpdate.hasExpired()) {
peerStatusUpdate.start();
std::map<uint32_t, json::object> peerStatus(getNetwork()->peerStatus.begin(), getNetwork()->peerStatus.end()); std::map<uint32_t, json::object> peerStatus(getNetwork()->peerStatus.begin(), getNetwork()->peerStatus.end());
for (auto entry : peerStatus) { for (auto entry : peerStatus) {
json::object wsObj = json::object(); json::object wsObj = json::object();
@ -193,6 +199,7 @@ int HostWS::run()
wsObj["payload"].set<json::object>(peerStatus); wsObj["payload"].set<json::object>(peerStatus);
send(wsObj); send(wsObj);
} }
}
// update peer list data // update peer list data
peerListUpdate.clock(ms); peerListUpdate.clock(ms);

Loading…
Cancel
Save

Powered by TurnKey Linux.