## Memory Allocators Memory Allocators — deprecated way to allocate chunks of memory for GList, GSList and GNode. |

## Synopsis

    #include <glib.h>

                GAllocator;
    GAllocator* g_allocator_new                 (const gchar *name,
                                                 guint n_preallocs);
    void        g_allocator_free                (GAllocator *allocator);

## Description

Prior to 2.10, GAllocator was used as an efficient way to allocate small pieces of memory for use with the GList, GSList and GNode data structures. Since 2.10, it has been completely replaced by the slice allocator and deprecated.

## Details

### GAllocator

    typedef struct _GAllocator GAllocator;

### Warning

`GAllocator` is deprecated and should not be used in newly-written code.

The GAllocator struct contains private data. and should only be accessed using the following functions.

### g_allocator_new ()

    GAllocator* g_allocator_new                 (const gchar *name,
                                                 guint n_preallocs);

### Warning

`g_allocator_new` has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice allocator instead

Creates a new GAllocator.

`name` : | the name of the GAllocator. This name is used to set the name of the GMemChunk used by the GAllocator, and is only used for debugging.
`n_preallocs` : | the number of elements in each block of memory allocated. Larger blocks mean less calls to `g_malloc()`, but some memory may be wasted. (GLib uses 128 elements per block by default.) The value must be between 1 and 65535.
Returns : | a new GAllocator.

### g_allocator_free ()

    void        g_allocator_free                (GAllocator *allocator);

### Warning

`g_allocator_free` has been deprecated since version 2.10 and should not be used in newly-written code. Use the slice allocator instead

Frees all of the memory allocated by the GAllocator.

`allocator` : | a GAllocator.