Provided by: libstdc++-9-doc_9.5.0-3ubuntu1_all bug

NAME

       __gnu_cxx::__pool_alloc_base - Base class for __pool_alloc.

SYNOPSIS

       #include <pool_allocator.h>

       Inherited by __gnu_cxx::__pool_alloc< _Tp > [private].

   Protected Types
       enum { _S_align }
       enum { _S_max_bytes }
       enum { _S_free_list_size }

   Protected Member Functions
       char * _M_allocate_chunk (size_t __n, int &__nobjs)
       _Obj *volatile * _M_get_free_list (size_t __bytes)  throw ()
       __mutex & _M_get_mutex ()  throw ()
       void * _M_refill (size_t __n)
       size_t _M_round_up (size_t __bytes)

   Static Protected Attributes
       static char * _S_end_free
       static _Obj *volatile _S_free_list [_S_free_list_size]
       static size_t _S_heap_size
       static char * _S_start_free

Detailed Description

       Base class for __pool_alloc.

       Uses various allocators to fulfill underlying requests (and makes as few requests as
       possible when in default high-speed pool mode).

       Important implementation properties: 0. If globally mandated, then allocate objects from
       new 1. If the clients request an object of size > _S_max_bytes, the resulting object will
       be obtained directly from new 2. In all other cases, we allocate an object of size exactly
       _S_round_up(requested_size). Thus the client has enough size information that we can
       return the object to the proper free list without permanently losing part of the object.

       Definition at line 78 of file pool_allocator.h.

Member Enumeration Documentation

   anonymous enum [protected]
       Definition at line 82 of file pool_allocator.h.

   anonymous enum [protected]
       Definition at line 83 of file pool_allocator.h.

   anonymous enum [protected]
       Definition at line 84 of file pool_allocator.h.

Member Function Documentation

   size_t __gnu_cxx::__pool_alloc_base::_M_round_up (size_t __bytes) [inline],  [protected]
       Definition at line 100 of file pool_allocator.h.

Member Data Documentation

   char* __gnu_cxx::__pool_alloc_base::_S_end_free [static],  [protected]
       Definition at line 96 of file pool_allocator.h.

   _Obj* volatile __gnu_cxx::__pool_alloc_base::_S_free_list[_S_free_list_size] [static],
       [protected]
       Definition at line 92 of file pool_allocator.h.

   size_t __gnu_cxx::__pool_alloc_base::_S_heap_size [static],  [protected]
       Definition at line 97 of file pool_allocator.h.

   char* __gnu_cxx::__pool_alloc_base::_S_start_free [static],  [protected]
       Definition at line 95 of file pool_allocator.h.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.