This class implements the ManagedAllocator protocol to provide a fast allocator of arbitrarily-sized blocks of memory.
Declared in <bslma_sequentialallocator.h>
class SequentialAllocator
: public ManagedAllocator
Both the release method and the destructor atomically delete all memory managed by this allocator; the deallocate method, however, has no effect for this class.
| Name | Description |
|---|---|
ManagedAllocator | Protocol for allocators that support releasing all allocated memory. |
| Name | Description |
|---|---|
size_type | Alias for an unsigned integral type capable of representing the number of bytes in this platform's virtual address space. |
| Name | Description |
|---|---|
SequentialAllocator [constructor] | Constructors |
~SequentialAllocator [destructor] [virtual] | Destroy this sequential allocator and release all associated memory. |
operator= | |
allocate | allocate overloads |
allocateAndExpand | allocateAndExpand overloads |
deallocate | This method has no effect for this allocator. |
deleteObject | deleteObject overloads |
deleteObjectRaw | deleteObjectRaw overloads |
expand | expand overloads |
is_equal | |
release [virtual] | Release all memory currently allocated through this allocator. |
reserveCapacity [virtual] | Reserve memory for at least the specified numBytes of allocations. |
truncate | Reduce the amount of memory allocated at the specified address. |
| Name | Description |
|---|---|
throwBadAlloc | Throw std::bad_alloc or abort the program. |
| Name | Description |
|---|---|
do_allocate [virtual] | Return a newly allocated block of at least bytes with alignment. |
do_deallocate [virtual] | Return the memory block at p having bytes and alignment. |
do_is_equal [virtual] | Return whether this allocator can exchange memory with other. |