@NonnullDefault
Package org.lwjgl.system.jemalloc
Contains bindings to the jemalloc library. jemalloc is a general purpose malloc implementation that emphasizes
fragmentation avoidance and scalable concurrency support.
The jemalloc documentation can be found here. The jemalloc wiki also contains useful information.
The jemalloc shared library that comes with LWJGL is configured with:
- --with-jemalloc-prefix=je_
- --enable-lazy-lock (Linux)
- --disable-stats
- --disable-fill
- --disable-cxx
- --disable-initial-exec-tls (Linux & macOS)
- --disable-zone-allocator (macOS)
The shared library may be replaced with a custom build that has more features enabled.
Dynamic configuration (for enabled features) is also possible, using either the MALLOC_CONF
environment variable or the
MALLCTL NAMESPACE and the mallctl*
functions.
-
Interface Summary Interface Description ExtentAllocI Instances of this interface may be set to theExtentHooks
struct.ExtentCommitI Instances of this interface may be set to theExtentHooks
struct.ExtentDallocI Instances of this interface may be set to theExtentHooks
struct.ExtentDecommitI Instances of this interface may be set to theExtentHooks
struct.ExtentDestroyI Instances of this interface may be set to theExtentHooks
struct.ExtentMergeI Instances of this interface may be set to theExtentHooks
struct.ExtentPurgeI Instances of this interface may be set to theExtentHooks
struct.ExtentSplitI Instances of this interface may be set to theExtentHooks
struct.MallocMessageCallbackI Instances of this interface may be passed to themalloc_usable_size
method. -
Class Summary Class Description ExtentAlloc Instances of this class may be set to theExtentHooks
struct.ExtentCommit Instances of this class may be set to theExtentHooks
struct.ExtentDalloc Instances of this class may be set to theExtentHooks
struct.ExtentDecommit Instances of this class may be set to theExtentHooks
struct.ExtentDestroy Instances of this class may be set to theExtentHooks
struct.ExtentHooks Theextent_hooks_t
structure comprises function pointers which are described individually below.ExtentMerge Instances of this class may be set to theExtentHooks
struct.ExtentPurge Instances of this class may be set to theExtentHooks
struct.ExtentSplit Instances of this class may be set to theExtentHooks
struct.JEmalloc Native bindings to jemalloc.JEmalloc.Functions Contains the function pointers loaded from the jemallocSharedLibrary
.JEmallocAllocator AMemoryUtil.MemoryAllocator
implementation using the jemalloc library.MallocMessageCallback Instances of this class may be passed to themalloc_usable_size
method.