16#ifndef MYSQL_CONCURRENCY_PADDED_SLOT
17#define MYSQL_CONCURRENCY_PADDED_SLOT
36template <
typename T,
typename Mutex_tp,
typename Cv_tp,
#define T
Definition: jit_executor_value.cc:373
Header for compiler-dependent features.
Definition: cache_line_size.h:31
constexpr std::size_t hardware_destructive_interference_size
Definition: cache_line_size.h:42
Padded slot for Sync_bounded_queue, aligning the struct to cache line size to minimize false sharing ...
Definition: padded_slot.h:38
Cv_tp consumer_cv
Condition variable for consumers waiting for the slot to be filled (empty queue).
Definition: padded_slot.h:51
Mutex_tp validity_mt
Mutex protecting access to the element and flags.
Definition: padded_slot.h:45
Cv_tp producer_cv
Condition variable for producers waiting for the slot to become free (full queue).
Definition: padded_slot.h:48