@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 theExtentHooksstruct.ExtentCommitI Instances of this interface may be set to theExtentHooksstruct.ExtentDallocI Instances of this interface may be set to theExtentHooksstruct.ExtentDecommitI Instances of this interface may be set to theExtentHooksstruct.ExtentDestroyI Instances of this interface may be set to theExtentHooksstruct.ExtentMergeI Instances of this interface may be set to theExtentHooksstruct.ExtentPurgeI Instances of this interface may be set to theExtentHooksstruct.ExtentSplitI Instances of this interface may be set to theExtentHooksstruct.MallocMessageCallbackI Instances of this interface may be passed to themalloc_usable_sizemethod. -
Class Summary Class Description ExtentAlloc Instances of this class may be set to theExtentHooksstruct.ExtentCommit Instances of this class may be set to theExtentHooksstruct.ExtentDalloc Instances of this class may be set to theExtentHooksstruct.ExtentDecommit Instances of this class may be set to theExtentHooksstruct.ExtentDestroy Instances of this class may be set to theExtentHooksstruct.ExtentHooks Theextent_hooks_tstructure comprises function pointers which are described individually below.ExtentMerge Instances of this class may be set to theExtentHooksstruct.ExtentPurge Instances of this class may be set to theExtentHooksstruct.ExtentSplit Instances of this class may be set to theExtentHooksstruct.JEmalloc Native bindings to jemalloc.JEmalloc.Functions Contains the function pointers loaded from the jemallocSharedLibrary.JEmallocAllocator AMemoryUtil.MemoryAllocatorimplementation using the jemalloc library.MallocMessageCallback Instances of this class may be passed to themalloc_usable_sizemethod.