MySQL 26.7.0
Source Code Documentation
mysql::concurrency Namespace Reference

Namespaces

namespace  detail
 

Classes

class  Condition_variable_wrapper
 MySQL wrapper for a condition variable, using mysql_cond_t as implementation of a condition variable having interface of condition_variable provided by the STL. More...
 
struct  Key_stub
 
class  Locking_queue
 Synchronized unbounded FIFO queue for thread-safe producer-consumer operations, using a single mutex and condition variable. More...
 
class  Mutex_wrapper
 MySQL wrapper for a mutex, template which may be specialized with a specific implementation of a mutex, e.g. More...
 
class  Spin_lock_mutex
 Implementation of a spin-lock mutex. More...
 
class  Sync_bounded_queue
 Bounded concurrent queue supporting multiple producers and consumers. More...
 
class  Thread
 Wrapper to mysql thread, which matches interface of std::thread. More...
 

Concepts

concept  Is_power_of_two
 

Typedefs

using Condition_variable = Condition_variable_wrapper
 
using Cv_key = PSI_cond_key
 
using Mutex = Mutex_wrapper
 
using Mutex_key = PSI_mutex_key
 
using Stage_key = PSI_stage_key
 
using Thread_key = PSI_thread_key
 
using Thread = std::thread
 

Functions

void set_stage (auto key)
 
void set_thd_stage (auto thd, auto key)
 
unsigned long long fetch_thread_mysql_id (std::size_t my_internal_id)
 Fetches internal id, PSI id in case linked with mysqld, or internal thread id. More...
 

Typedef Documentation

◆ Condition_variable

typedef std::condition_variable mysql::concurrency::Condition_variable

◆ Cv_key

◆ Mutex

typedef std::mutex mysql::concurrency::Mutex

◆ Mutex_key

◆ Stage_key

◆ Thread

using mysql::concurrency::Thread = typedef std::thread

◆ Thread_key

Function Documentation

◆ fetch_thread_mysql_id()

unsigned long long mysql::concurrency::fetch_thread_mysql_id ( std::size_t  my_internal_id)
inline

Fetches internal id, PSI id in case linked with mysqld, or internal thread id.

Returns
mysql internal id

◆ set_stage()

void mysql::concurrency::set_stage ( auto  key)
inline

◆ set_thd_stage()

void mysql::concurrency::set_thd_stage ( auto  thd,
auto  key 
)
inline