#include <allocator_concurrent_static.h>
Public Types | |
| using | value_type = Node |
| using | pointer = Node * |
| using | size_type = AZStd::size_t |
| using | difference_type = AZStd::ptrdiff_t |
Public Member Functions | |
| AZ_FORCE_INLINE | static_pool_concurrent_allocator (const char *name="AZStd::static_pool_concurrent_allocator") |
| AZ_FORCE_INLINE | static_pool_concurrent_allocator (const this_type &rhs) |
| AZ_FORCE_INLINE | static_pool_concurrent_allocator (const this_type &rhs, const char *name) |
| AZ_FORCE_INLINE this_type & | operator= (const this_type &rhs) |
| AZ_FORCE_INLINE const char * | get_name () const |
| AZ_FORCE_INLINE void | set_name (const char *name) |
| constexpr size_type | max_size () const |
| AZ_FORCE_INLINE size_type | get_allocated_size () const |
| Node * | allocate () |
| pointer | allocate (size_type byteSize, size_type alignment, int flags=0) |
| void | deallocate (Node *ptr) |
| void | deallocate (pointer ptr, size_type byteSize, size_type alignment) |
| AZ_FORCE_INLINE size_type | resize (pointer ptr, size_type newSize) |
| void | reset () |
| void | leak_before_destroy () |
| AZ_FORCE_INLINE void * | data () const |
| AZ_FORCE_INLINE constexpr size_type | data_size () const |
Declares a static buffer of Node[NumNodes], and them pools them. It provides concurrent safe access. This is a perfect allocator for pooling lists or hash table nodes. Internally the buffer is allocated using aligned_storage.