8#ifndef INCLUDED_BDLMA_CONCURRENTPOOLALLOCATOR
9#define INCLUDED_BDLMA_CONCURRENTPOOLALLOCATOR
603#include <bdlscm_version.h>
644 k_MAGIC_NUMBER = 0x111902,
681 int d_maxBlocksPerChunk;
688 ConcurrentPoolAllocator(
const ConcurrentPoolAllocator&);
689 ConcurrentPoolAllocator& operator=(
const ConcurrentPoolAllocator&);
718 int maxBlocksPerChunk,
745 int maxBlocksPerChunk,
802 if (d_initialized == k_INITIALIZED) {
803 d_pool.
object().release();
810 if (d_initialized == k_INITIALIZED) {
811 d_pool.
object().reserveCapacity(numObjects);
Definition bdlma_concurrentpoolallocator.h:635
void reserveCapacity(int numObjects)
Definition bdlma_concurrentpoolallocator.h:808
ConcurrentPoolAllocator(bsls::BlockGrowth::Strategy growthStrategy, int maxBlocksPerChunk, bslma::Allocator *basicAllocator=0)
void deallocate(void *address) BSLS_KEYWORD_OVERRIDE
ConcurrentPoolAllocator(bsls::BlockGrowth::Strategy growthStrategy, bslma::Allocator *basicAllocator=0)
size_type blockSize() const
Definition bdlma_concurrentpoolallocator.h:817
ConcurrentPoolAllocator(size_type blockSize, bslma::Allocator *basicAllocator=0)
ConcurrentPoolAllocator(size_type blockSize, bsls::BlockGrowth::Strategy growthStrategy, int maxBlocksPerChunk, bslma::Allocator *basicAllocator=0)
bsls::Types::size_type size_type
Definition bdlma_concurrentpoolallocator.h:639
~ConcurrentPoolAllocator() BSLS_KEYWORD_OVERRIDE
Destroy this pool allocator.
ConcurrentPoolAllocator(bslma::Allocator *basicAllocator=0)
ConcurrentPoolAllocator(size_type blockSize, bsls::BlockGrowth::Strategy growthStrategy, bslma::Allocator *basicAllocator=0)
void release()
Definition bdlma_concurrentpoolallocator.h:800
void * allocate(size_type size) BSLS_KEYWORD_OVERRIDE
Definition bslma_allocator.h:457
Definition bsls_atomic.h:743
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
#define BSLS_KEYWORD_OVERRIDE
Definition bsls_keyword.h:653
Definition bdlma_alignedallocator.h:276
AlignmentToType< BSLS_MAX_ALIGNMENT >::Type MaxAlignedType
Definition bsls_alignmentutil.h:282
Strategy
Definition bsls_blockgrowth.h:169
std::size_t size_type
Definition bsls_types.h:124
Definition bsls_objectbuffer.h:276
TYPE & object()
Definition bsls_objectbuffer.h:351