mirror of
https://github.com/BeamMP/BeamMP-Server.git
synced 2026-04-05 15:26:19 +00:00
45 lines
865 B
C++
45 lines
865 B
C++
///
|
|
/// Created by Anonymous275 on 6/18/2020
|
|
///
|
|
#include "Security/Enc.h"
|
|
#include "Client.hpp"
|
|
#include <iostream>
|
|
#include <string>
|
|
#include <thread>
|
|
std::string StatReport;
|
|
int PPS = 0;
|
|
void Monitor() {
|
|
int R, C = 0, V = 0;
|
|
if (CI->Clients.empty()){
|
|
StatReport = "-";
|
|
return;
|
|
}
|
|
for (Client *c : CI->Clients) {
|
|
if (c != nullptr && c->GetCarCount() > 0) {
|
|
C++;
|
|
V += c->GetCarCount();
|
|
}
|
|
}
|
|
if (C == 0 || PPS == 0) {
|
|
StatReport = "-";
|
|
} else {
|
|
R = (PPS / C) / V;
|
|
StatReport = std::to_string(R);
|
|
}
|
|
PPS = 0;
|
|
}
|
|
|
|
[[noreturn]]void Stat(){
|
|
DebugPrintTID();
|
|
while(true){
|
|
Monitor();
|
|
std::this_thread::sleep_for(std::chrono::seconds(1));
|
|
}
|
|
}
|
|
|
|
void StatInit(){
|
|
StatReport = "-";
|
|
std::thread Init(Stat);
|
|
Init.detach();
|
|
}
|