__gnu_cxx::__mt_alloc< _Tp, _Poolp > Class Template Reference
Utilities » Memory » Allocators
Inheritance diagram for __gnu_cxx::__mt_alloc< _Tp, _Poolp >:
[legend]

## Public Types

typedef _Poolp | __policy_type
typedef _Poolp::pool_type | __pool_type
typedef ptrdiff_t | difference_type
typedef _Tp * | pointer
typedef std::true_type | propagate_on_container_move_assignment
typedef _Tp & | reference
typedef size_t | size_type
typedef _Tp | value_type

## Public Member Functions

| __mt_alloc (const __mt_alloc &) noexcept
template<typename _Tp1 , typename _Poolp1 >
| __mt_alloc (const __mt_alloc< _Tp1, _Poolp1 > &) noexcept
const __pool_base::_Tune | _M_get_options ()
void | _M_set_options (__pool_base::_Tune __t)
const_pointer | address (const_reference __x) const noexcept
pointer | address (reference __x) const noexcept
pointer | allocate (size_type __n, const void *=0)
template<typename _Up , typename... _Args>
void | construct (_Up *__p, _Args &&... __args)
void | deallocate (pointer __p, size_type __n)
template<typename _Up >
void | destroy (_Up *__p)
size_type | max_size () const noexcept

## Public Attributes

const typedef _Tp * | const_pointer
const typedef _Tp & | const_reference

## Detailed Description

### template<typename _Tp, typename _Poolp = __common_pool_policy<__pool, true >>
class __gnu_cxx::__mt_alloc< _Tp, _Poolp >

This is a fixed size (power of 2) allocator which - when compiled with thread support - will maintain one freelist per size per thread plus a global one. Steps are taken to limit the per thread freelist sizes (by returning excess back to the global list).

Further details: https://gcc.gnu.org/onlinedocs/libstdc++/manual/mt_allocator.html

Definition at line 639 of file mt_allocator.h.

The documentation for this class was generated from the following file:

- mt_allocator.h