8#ifndef INCLUDED_BDLMA_CONCURRENTMULTIPOOL
9#define INCLUDED_BDLMA_CONCURRENTMULTIPOOL
509#include <bdlscm_version.h>
591 int maxBlocksPerChunk);
593 int maxBlocksPerChunk);
595 const int *maxBlocksPerChunkArray);
602 const int *maxBlocksPerChunkArray);
655 int maxBlocksPerChunk,
663 int maxBlocksPerChunk,
667 const int *maxBlocksPerChunkArray,
707 const int *maxBlocksPerChunkArray,
738 template <
class TYPE>
748 template <
class TYPE>
817 return d_maxBlockSize;
Definition bdlma_blocklist.h:235
bslma::Allocator * allocator() const
Return the allocator used by this object to allocate memory.
Definition bdlma_blocklist.h:321
Definition bdlma_concurrentallocatoradapter.h:288
Definition bdlma_concurrentmultipool.h:545
int numPools() const
Return the number of pools managed by this multipool object.
Definition bdlma_concurrentmultipool.h:809
bslma::Allocator * allocator() const
Definition bdlma_concurrentmultipool.h:823
void deallocate(void *address)
void * allocate(bsls::Types::size_type size)
ConcurrentMultipool(bsls::BlockGrowth::Strategy growthStrategy, bslma::Allocator *basicAllocator=0)
ConcurrentMultipool(int numPools, bslma::Allocator *basicAllocator=0)
void deleteObject(const TYPE *object)
Definition bdlma_concurrentmultipool.h:795
ConcurrentMultipool(bslma::Allocator *basicAllocator=0)
void deleteObjectRaw(const TYPE *object)
Definition bdlma_concurrentmultipool.h:802
void reserveCapacity(bsls::Types::size_type size, int numBlocks)
ConcurrentMultipool(int numPools, const bsls::BlockGrowth::Strategy *growthStrategyArray, const int *maxBlocksPerChunkArray, bslma::Allocator *basicAllocator=0)
ConcurrentMultipool(int numPools, bsls::BlockGrowth::Strategy growthStrategy, const int *maxBlocksPerChunkArray, bslma::Allocator *basicAllocator=0)
bsls::Types::size_type maxPooledBlockSize() const
Definition bdlma_concurrentmultipool.h:815
ConcurrentMultipool(int numPools, bsls::BlockGrowth::Strategy growthStrategy, bslma::Allocator *basicAllocator=0)
ConcurrentMultipool(int numPools, const bsls::BlockGrowth::Strategy *growthStrategyArray, bslma::Allocator *basicAllocator=0)
ConcurrentMultipool(int numPools, const bsls::BlockGrowth::Strategy *growthStrategyArray, int maxBlocksPerChunk, bslma::Allocator *basicAllocator=0)
void release()
Relinquish all memory currently allocated via this multipool object.
ConcurrentMultipool(int numPools, bsls::BlockGrowth::Strategy growthStrategy, int maxBlocksPerChunk, bslma::Allocator *basicAllocator=0)
Definition bdlma_concurrentpool.h:332
Definition bslma_allocator.h:457
Definition bslmt_mutex.h:315
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlma_alignedallocator.h:276
static void deleteObject(const TYPE *object, ALLOCATOR *allocator)
Definition bslma_deleterhelper.h:196
static void deleteObjectRaw(const TYPE *object, ALLOCATOR *allocator)
Definition bslma_deleterhelper.h:217
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