@FunctionalInterface
public interface ExtentAllocI
extends org.lwjgl.system.CallbackI.P
ExtentHooks struct.
void * (*) (
extent_hooks_t *extent_hooks,
void *new_addr,
size_t size,
size_t alignment,
bool *zero,
bool *commit,
unsigned int arena_ind
)org.lwjgl.system.CallbackI.B, org.lwjgl.system.CallbackI.D, org.lwjgl.system.CallbackI.F, org.lwjgl.system.CallbackI.I, org.lwjgl.system.CallbackI.J, org.lwjgl.system.CallbackI.N, org.lwjgl.system.CallbackI.P, org.lwjgl.system.CallbackI.S, org.lwjgl.system.CallbackI.V, org.lwjgl.system.CallbackI.Z| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
SIGNATURE |
| Modifier and Type | Method and Description |
|---|---|
default long |
callback(long args) |
default java.lang.String |
getSignature() |
long |
invoke(long extent_hooks,
long new_addr,
long size,
long alignment,
long zero,
long commit,
int arena_ind)
Extent allocation hook.
|
static final java.lang.String SIGNATURE
default java.lang.String getSignature()
getSignature in interface org.lwjgl.system.CallbackIdefault long callback(long args)
callback in interface org.lwjgl.system.CallbackI.Plong invoke(long extent_hooks,
long new_addr,
long size,
long alignment,
long zero,
long commit,
int arena_ind)
An extent allocation function conforms to the extent_alloc_t type and upon success returns a pointer to size bytes of mapped memory on
behalf of arena arena_ind such that the extent's base address is a multiple of alignment, as well as setting *zero to indicate
whether the extent is zeroed and *commit to indicate whether the extent is committed. Upon error the function returns NULL and leaves
*zero and *commit unmodified. The size parameter is always a multiple of the page size. The alignment parameter is always a
power of two at least as large as the page size. Zeroing is mandatory if *zero is true upon function entry. Committing is mandatory if
*commit is true upon function entry. If new_addr is not NULL, the returned pointer must be new_addr on success or NULL on error.
Committed memory may be committed in absolute terms as on a system that does not overcommit, or in implicit terms as on a system that overcommits and
satisfies physical memory needs on demand via soft page faults. Note that replacing the default extent allocation function makes the arena's
arena.i.dss setting irrelevant.
Copyright LWJGL. All Rights Reserved. License terms.