[#BloombergLP-bdlma-BlockList] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlma.adoc[bdlma]::BlockList :relfileprefix: ../../ :mrdocs: Low‐level memory manager that allocates and manages a sequence of memory blocks. == Synopsis Declared in `<bdlma_blocklist.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class BlockList; ---- == Description This class implements a low‐level memory manager that allocates and manages a sequence of memory blocks ‐‐ each potentially of a different size as specified during the invocation of the `allocate` method. Allocated blocks may be efficiently deallocated individually, i.e., potentially in constant time depending on the supplied allocator. The `release` method deallocates the entire sequence of memory blocks, as does the destructor. == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlma/BlockList/2constructor.adoc[`BlockList`] [.small]#[constructor]# | Create an empty block list for managing memory blocks of varying sizes. | xref:BloombergLP/bdlma/BlockList/2destructor.adoc[`~BlockList`] [.small]#[destructor]# | Destroy this object and deallocate all outstanding memory blocks managed by this object. | xref:BloombergLP/bdlma/BlockList/allocate.adoc[`allocate`] | Return the address of a contiguous block of memory of the specified size. | xref:BloombergLP/bdlma/BlockList/allocator.adoc[`allocator`] | Return the allocator used by this object to allocate memory. | xref:BloombergLP/bdlma/BlockList/deallocate.adoc[`deallocate`] | Return the memory at the specified address to the associated allocator. | xref:BloombergLP/bdlma/BlockList/release.adoc[`release`] | Deallocate all memory blocks currently managed by this object, returning it to its default‐constructed state. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#