Allocator Builder
Policy Based C++ Template Allocator Library
 All Classes Functions Variables Enumerations Enumerator Groups Pages
alb::v_100::shared_freelist< Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations > Class Template Reference

#include <freelist.hpp>

Inherits alb::v_100::freelist_base< true, Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations >.

Public Member Functions

 shared_freelist (size_t minSize, size_t maxSize) noexcept
 
- Public Member Functions inherited from alb::v_100::freelist_base< true, Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations >
 freelist_base (size_t minSize, size_t maxSize) noexcept
 
 ~freelist_base ()
 
void set_min_max (size_t minSize, size_t maxSize) noexcept
 
size_t min_size () const noexcept
 
size_t max_size () const noexcept
 
block allocate (size_t n) noexcept
 
bool reallocate (block &b, size_t n) noexcept
 
bool owns (const block &b) const noexcept
 
void deallocate (block &b) noexcept
 

Additional Inherited Members

- Public Types inherited from alb::v_100::freelist_base< true, Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations >
using allocator = Allocator
 
- Static Public Attributes inherited from alb::v_100::freelist_base< true, Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations >
static constexpr unsigned pool_size
 
static constexpr unsigned number_of_batch_allocations
 
static constexpr bool supports_truncated_deallocation
 
static constexpr unsigned alignment
 

Detailed Description

template<class Allocator, size_t MinSize, size_t MaxSize, size_t PoolSize = 1024, size_t NumberOfBatchAllocations = 8>
class alb::v_100::shared_freelist< Allocator, MinSize, MaxSize, PoolSize, NumberOfBatchAllocations >

This class is a thread safe specialization of the FreeList. For details see alb::freelist_base

Definition at line 241 of file freelist.hpp.


The documentation for this class was generated from the following file: