![]() |
MySQL 9.4.0
Source Code Documentation
|
Manages a pool of memory which is prevented from being swapped. More...
#include <secure_memory_pool.h>
Classes | |
| class | Bucket |
| A bucket of memory blocks of the given size. More... | |
| class | BucketPool |
| Holds buckets with the given block size. More... | |
| class | ContiguousBlocks |
| Allows to allocate multiple contiguous blocks of memory. More... | |
| class | FixedBlock |
| Allocates a single block of memory. More... | |
Public Member Functions | |
| SecureMemoryPool (const SecureMemoryPool &)=delete | |
| SecureMemoryPool (SecureMemoryPool &&)=delete | |
| SecureMemoryPool & | operator= (const SecureMemoryPool &)=delete |
| SecureMemoryPool & | operator= (SecureMemoryPool &&)=delete |
| ~SecureMemoryPool ()=default | |
| void * | allocate (std::size_t size) |
| Allocates the given number of bytes. More... | |
| void | deallocate (void *ptr, std::size_t size) noexcept |
| Deallocates the given number of bytes. More... | |
Static Public Member Functions | |
| static SecureMemoryPool & | get () |
| The single instance of this class. More... | |
Private Member Functions | |
| SecureMemoryPool () | |
Private Attributes | |
| std::vector< Bucket< FixedBlock > > | fixed_buckets_ |
| std::vector< std::mutex > | fixed_buckets_mutexes_ |
| BucketPool< Bucket< ContiguousBlocks > > | large_pool_ |
Manages a pool of memory which is prevented from being swapped.
|
delete |
|
delete |
|
default |
|
private |
| void * mysql_harness::SecureMemoryPool::allocate | ( | std::size_t | size | ) |
Allocates the given number of bytes.
| size | Number of bytes to allocate. |
|
noexcept |
Deallocates the given number of bytes.
| ptr | Memory previously allocated by this class. |
| size | Size of the memory. |
|
static |
The single instance of this class.
|
delete |
|
delete |
|
private |
|
private |
|
private |