Create a sequential pool with growth limited to maxBufferSize.

Synopsis

Declared in <bdlma_sequentialpool.h>

SequentialPool(
    bsls::Types::size_type initialSize,
    bsls::Types::size_type maxBufferSize,
    bslma::Allocator* basicAllocator = 0);

Description

Create a sequential pool for allocating memory blocks from a sequence of dynamically‐allocated buffers, of which the initial buffer has the specified initialSize (in bytes), and the internal buffer growth is limited to the specified maxBufferSize. Optionally specify a basicAllocator used to supply memory for the dynamically‐allocated buffers. If basicAllocator is 0, the currently installed default allocator is used. Optionally specify a growthStrategy used to control buffer growth. If no growthStrategy is specified, geometric growth is used. Optionally specify an alignmentStrategy used to control alignment of allocated memory blocks. If no alignmentStrategy is specified, natural alignment is used. The behavior is undefined unless 0 < initialSize and initialSize <= maxBufferSize. Note that when constant growth is used, the size of the internal buffers will always be the same as initialSize.

Parameters

Name

Description

initialSize

initial size in bytes of the internal buffer

maxBufferSize

maximum dynamically allocated buffer size in bytes

basicAllocator

memory allocator; null uses the default

Created with MrDocs