a8/a8/perfmonitor.h
aozhiwei 8a86a795cd 1
2024-05-29 11:13:40 +08:00

33 lines
688 B
C++

#pragma once
#include <atomic>
#include <a8/singleton.h>
namespace a8
{
class PerfMonitor : public a8::Singleton<PerfMonitor>
{
private:
PerfMonitor();
friend class a8::Singleton<PerfMonitor>;
public:
void Init();
void UnInit();
public:
long long send_eagain_times = 0;
long long recv_eagain_times = 0;
long long max_send_time = 0;
long long max_recv_time = 0;
std::atomic<long long> server_send_bytes = {0};
std::atomic<long long> server_consume_bytes = {0};
std::atomic<long long> conn_send_bytes = {0};
std::atomic<long long> conn_consume_bytes = {0};
};
}