MySQL 8.4.0
Source Code Documentation
PROF_MEASUREMENT Class Reference

A single entry in a single profile. More...

#include <sql_profile.h>

Private Member Functions

void set_label (const char *status_arg, const char *function_arg, const char *file_arg, unsigned int line_arg)
 
 PROF_MEASUREMENT (QUERY_PROFILE *profile_arg, const char *status_arg)
 
 PROF_MEASUREMENT (QUERY_PROFILE *profile_arg, const char *status_arg, const char *function_arg, const char *file_arg, unsigned int line_arg)
 
 ~PROF_MEASUREMENT ()
 
void collect ()
 This updates the statistics for this moment of time. More...
 

Private Attributes

QUERY_PROFILEprofile
 
const char * status
 
struct rusage rusage
 
const char * function
 
const char * file
 
unsigned int line
 
ulong m_seq
 
double time_usecs
 
char * allocated_status_memory
 

Friends

class QUERY_PROFILE
 
class PROFILING
 

Detailed Description

A single entry in a single profile.

Constructor & Destructor Documentation

◆ PROF_MEASUREMENT() [1/2]

PROF_MEASUREMENT::PROF_MEASUREMENT ( QUERY_PROFILE profile_arg,
const char *  status_arg 
)
private

◆ PROF_MEASUREMENT() [2/2]

PROF_MEASUREMENT::PROF_MEASUREMENT ( QUERY_PROFILE profile_arg,
const char *  status_arg,
const char *  function_arg,
const char *  file_arg,
unsigned int  line_arg 
)
private

◆ ~PROF_MEASUREMENT()

PROF_MEASUREMENT::~PROF_MEASUREMENT ( )
private

Member Function Documentation

◆ collect()

void PROF_MEASUREMENT::collect ( )
private

This updates the statistics for this moment of time.

It captures the state of the running system, so later we can compare points in time and infer what happened in the mean time. It should only be called immediately upon instantiation of this PROF_MEASUREMENT.

◆ set_label()

void PROF_MEASUREMENT::set_label ( const char *  status_arg,
const char *  function_arg,
const char *  file_arg,
unsigned int  line_arg 
)
private

Friends And Related Function Documentation

◆ PROFILING

friend class PROFILING
friend

◆ QUERY_PROFILE

friend class QUERY_PROFILE
friend

Member Data Documentation

◆ allocated_status_memory

char* PROF_MEASUREMENT::allocated_status_memory
private

◆ file

const char* PROF_MEASUREMENT::file
private

◆ function

const char* PROF_MEASUREMENT::function
private

◆ line

unsigned int PROF_MEASUREMENT::line
private

◆ m_seq

ulong PROF_MEASUREMENT::m_seq
private

◆ profile

QUERY_PROFILE* PROF_MEASUREMENT::profile
private

◆ rusage

struct rusage PROF_MEASUREMENT::rusage
private

◆ status

const char* PROF_MEASUREMENT::status
private

◆ time_usecs

double PROF_MEASUREMENT::time_usecs
private

The documentation for this class was generated from the following files: