public final class ThreadLocalAllocation extends Object
Modifier and Type | Class and Description |
---|---|
static interface |
ThreadLocalAllocation.Descriptor |
static class |
ThreadLocalAllocation.TestingBackdoor
Expose some private methods for white-box testing.
|
Modifier and Type | Field and Description |
---|---|
protected static FastThreadLocalWord<AlignedHeapChunk.AlignedHeader> |
freeList
A thread-local free list of aligned chunks.
|
static FastThreadLocalBytes<ThreadLocalAllocation.Descriptor> |
regularTLAB
TLAB for regular allocations.
|
Modifier and Type | Method and Description |
---|---|
static void |
disableThreadLocalAllocation()
Stop using the current chunk for thread-local allocation.
|
static void |
disableThreadLocalAllocation(org.graalvm.nativeimage.IsolateThread vmThread) |
static org.graalvm.word.UnsignedWord |
getObjectBytes(ThreadLocalAllocation.Descriptor tlab)
Returns the total memory used by the TLAB in bytes.
|
static void |
releaseMemory(ThreadLocalAllocation.Descriptor tlab)
Releases all the memory allocated in this TLAB, without any safety checks that the memory is
no longer referenced from other objects.
|
static void |
resumeThreadLocalAllocation() |
static void |
suspendThreadLocalAllocation() |
static boolean |
verifyUninitialized(ThreadLocalAllocation.Descriptor tlab) |
public static final FastThreadLocalBytes<ThreadLocalAllocation.Descriptor> regularTLAB
protected static final FastThreadLocalWord<AlignedHeapChunk.AlignedHeader> freeList
public static void disableThreadLocalAllocation()
public static void disableThreadLocalAllocation(org.graalvm.nativeimage.IsolateThread vmThread)
public static void suspendThreadLocalAllocation()
public static void resumeThreadLocalAllocation()
public static void releaseMemory(ThreadLocalAllocation.Descriptor tlab)
public static org.graalvm.word.UnsignedWord getObjectBytes(ThreadLocalAllocation.Descriptor tlab)
public static boolean verifyUninitialized(ThreadLocalAllocation.Descriptor tlab)