[#BloombergLP-bdlma-ConcurrentPoolAllocator-2constructor-00fc]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlma.adoc[bdlma]::xref:BloombergLP/bdlma/ConcurrentPoolAllocator.adoc[ConcurrentPoolAllocator]::ConcurrentPoolAllocator
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bdlma&lowbar;concurrentpoolallocator&period;h&gt;`

Create a pool allocator that sizes blocks on the first allocation&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-009.adoc[ConcurrentPoolAllocator](xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-009.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, with the specified `growthStrategy`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-05.adoc[ConcurrentPoolAllocator](
    xref:BloombergLP/bsls/BlockGrowth/Strategy.adoc[bsls::BlockGrowth::Strategy] growthStrategy,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-05.adoc[_» more&period;&period;&period;_]#

Create a pool allocator that returns blocks of the specified size&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-01.adoc[ConcurrentPoolAllocator](
    xref:BloombergLP/bdlma/ConcurrentPoolAllocator/size_type.adoc[size&lowbar;type] blockSize,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-01.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, with the specified `maxBlocksPerChunk`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-00f7.adoc[ConcurrentPoolAllocator](
    xref:BloombergLP/bsls/BlockGrowth/Strategy.adoc[bsls::BlockGrowth::Strategy] growthStrategy,
    int maxBlocksPerChunk,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-00f7.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, with the specified `growthStrategy`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-0a.adoc[ConcurrentPoolAllocator](
    xref:BloombergLP/bdlma/ConcurrentPoolAllocator/size_type.adoc[size&lowbar;type] blockSize,
    xref:BloombergLP/bsls/BlockGrowth/Strategy.adoc[bsls::BlockGrowth::Strategy] growthStrategy,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-0a.adoc[_» more&period;&period;&period;_]#

Same as the preceding overload, with the specified `maxBlocksPerChunk`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-03.adoc[ConcurrentPoolAllocator](
    xref:BloombergLP/bdlma/ConcurrentPoolAllocator/size_type.adoc[size&lowbar;type] blockSize,
    xref:BloombergLP/bsls/BlockGrowth/Strategy.adoc[bsls::BlockGrowth::Strategy] growthStrategy,
    int maxBlocksPerChunk,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bdlma/ConcurrentPoolAllocator/2constructor-03.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *basicAllocator*
| memory allocator&semi; null uses the default
| *growthStrategy*
| strategy controlling growth of internal chunks
| *blockSize*
| size in bytes of each pooled memory block
| *maxBlocksPerChunk*
| maximum blocks allocated when replenishing
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
