24#ifndef MYSQL_SCHEDULER_STATISTICS_MONITOR_H
25#define MYSQL_SCHEDULER_STATISTICS_MONITOR_H
33#include <unordered_map>
50 static void clear(std::size_t instance_id);
57 std::unique_ptr<Statistics_instance_monitor>;
59 std::array<Statistics_instance_monitor, Constants::max_instances>;
MySQL wrapper for a mutex, template which may be specialized with a specific implementation of a mute...
Definition: mutex_wrapper.h:38
CSA statistics monitor, gathers statistics coming from different CSA threads Each statistic is a pair...
Definition: statistics_instance_monitor.h:54
Singleton Statistics Monitor for all of the registered "instances".
Definition: statistics_monitor.h:44
static Statistics_instance_monitor & get(std::size_t instance_id)
Definition: statistics_monitor.cpp:35
Statistics_monitor()=default
static std::atomic< bool > m_ready
Definition: statistics_monitor.h:62
std::unique_ptr< Statistics_instance_monitor > Statistics_instance_monitor_ptr
Definition: statistics_monitor.h:57
static void clear(std::size_t instance_id)
Definition: statistics_monitor.cpp:47
static void init()
This initialization function is called by "get" if needed.
Definition: statistics_monitor.cpp:55
static Instances_map & instances()
Definition: statistics_monitor.cpp:57
std::array< Statistics_instance_monitor, Constants::max_instances > Instances_map
Definition: statistics_monitor.h:59
static std::atomic< bool > m_init
Definition: statistics_monitor.h:61
concurrency::Mutex_key Mutex_key
Definition: statistics_monitor.h:47
Mutex_wrapper Mutex
Definition: mutex_srv.h:40
PSI_mutex_key Mutex_key
Definition: mutex_srv.h:41
Definition: base_dependency_tracker.h:41