MySQL 9.2.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
ut0counting_semaphore.h File Reference
#include "ut0class_life_cycle.h"
#include <atomic>
#include <condition_variable>
#include <cstdint>
#include <mutex>
#include <type_traits>

Go to the source code of this file.

Classes

struct  ut::detail::has_atomic_wait< typename, typename >
 A SFINAE helper type which has value=true if and only if std::atomic<T> supports wait(T). More...
 
struct  ut::detail::has_atomic_wait< T, std::void_t< decltype(std::atomic< T >().wait(T{}))> >
 A SFINAE specialization which kicks in when std::atomic::wait(T) is implemented. More...
 
class  ut::detail::counting_semaphore_base< T, true >
 Just like std::counting_semaphore except that: More...
 
class  ut::detail::counting_semaphore_base< T, false >
 A specialization to be used on old platforms such as gcc 10.2, which lack support for atomic wait. More...
 

Namespaces

namespace  ut
 This file contains a set of libraries providing overloads for regular dynamic allocation routines which allow for opt-in memory instrumentation through performance schema memory engine (PFS).
 
namespace  ut::detail
 

Typedefs

using ut::counting_semaphore = detail::counting_semaphore_base< uint32_t >
 Just like std::counting_semaphore except that: More...