![]() |
MySQL 8.0.43
Source Code Documentation
|
Namespaces | |
| namespace | traits |
Classes | |
| class | Aligned_atomic |
Templated class that encapsulates an std::atomic within a byte buffer that is padded to the processor cache-line size. More... | |
| struct | is_allocator |
Struct that allows for checking if T fulfills the Allocator named requirements. More... | |
| class | PFS_allocator |
| Allocator class for instrumenting allocated memory with Performance Schema keys. More... | |
| class | Ref_ptr |
| Class that holds the pointer to a variable in a static and non-destructible way. More... | |
| class | Unique_ptr |
Smart pointer to hold a unique pointer to a heap allocated memory of type T, constructed using a specific allocator. More... | |
Functions | |
| static size_t | _cache_line_size () |
| Calculates and returns the size of the CPU cache line. More... | |
| static size_t | cache_line_size () |
| template<typename T > | |
| static size_t | _cacheline_for () |
Retrieves the amount of bytes, multiple of the current cacheline size, needed to store an element of type T. More... | |
| template<typename T > | |
| static size_t | minimum_cacheline_for () |
Retrieves the amount of bytes, multiple of the current cacheline size, needed to store an element of type T. More... | |
| template<typename T , std::enable_if_t< std::is_array< T >::value > * = nullptr> | |
| Unique_ptr< T, std::nullptr_t > | make_unique (size_t size) |
In-place constructs a new unique pointer with no specific allocator and with array type T. More... | |
| template<typename T , typename A , std::enable_if_t< std::is_array< T >::value > * = nullptr> | |
| Unique_ptr< T, A > | make_unique (A &alloc, size_t size) |
In-place constructs a new unique pointer with a specific allocator and with array type T. More... | |
| template<typename T , typename A , typename... Args, std::enable_if_t<!std::is_array< T >::value &&memory::is_allocator< A >::value > * = nullptr> | |
| Unique_ptr< T, A > | make_unique (A &alloc, Args &&...args) |
In-place constructs a new unique pointer with a specific allocator and with non-array type T. More... | |
| template<typename T , typename... Args, std::enable_if_t<!std::is_array< T >::value > * = nullptr> | |
| Unique_ptr< T, std::nullptr_t > | make_unique (Args &&...args) |
In-place constructs a new unique pointer with no specific allocator and with non-array type T. More... | |
|
inlinestatic |
Calculates and returns the size of the CPU cache line.
|
inlinestatic |
Retrieves the amount of bytes, multiple of the current cacheline size, needed to store an element of type T.
This is a non-caching non-thread safe helper function and memory::minimum_cacheline_for should be used instead.
T.
|
inlinestatic |
| Unique_ptr< T, A > memory::make_unique | ( | A & | alloc, |
| Args &&... | args | ||
| ) |
In-place constructs a new unique pointer with a specific allocator and with non-array type T.
| alloc | A reference to the allocator object to use. |
| args | The parameters to be used in constructing the instance of T. |
| Unique_ptr< T, A > memory::make_unique | ( | A & | alloc, |
| size_t | size | ||
| ) |
In-place constructs a new unique pointer with a specific allocator and with array type T.
| alloc | A reference to the allocator object to use. |
| size | The size of the array to allocate. |
| Unique_ptr< T, std::nullptr_t > memory::make_unique | ( | Args &&... | args | ) |
In-place constructs a new unique pointer with no specific allocator and with non-array type T.
| args | The parameters to be used in constructing the instance of T. |
| Unique_ptr< T, std::nullptr_t > memory::make_unique | ( | size_t | size | ) |
In-place constructs a new unique pointer with no specific allocator and with array type T.
| size | The size of the array to allocate. |
|
inlinestatic |
Retrieves the amount of bytes, multiple of the current cacheline size, needed to store an element of type T.
This function caches the computed value in a static storage variable and does it in a thread-safe manner.
T.