Package one.nio.mem
Class ArenaAllocator
java.lang.Object
one.nio.mem.ArenaAllocator
- All Implemented Interfaces:
Allocator
Fast arena-based allocator that does not suffer from fragmentation.
Individual objects cannot be released; arena is disposed all at once.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlongcalloc(int size) voidfree(long address) longprotected longgetMemoryFromSystem(long size) longlongmalloc(int size) voidrelease()protected voidreleaseMemoryToSystem(long addr, long size) voidverify()Verify the layout of the heap.
-
Constructor Details
-
ArenaAllocator
public ArenaAllocator()
-
-
Method Details
-
release
public void release() -
malloc
public long malloc(int size) -
calloc
public long calloc(int size) -
free
public void free(long address) -
verify
public void verify()Description copied from interface:AllocatorVerify the layout of the heap. Expensive operation, used only for debugging purposes. -
getMemoryFromSystem
protected long getMemoryFromSystem(long size) -
releaseMemoryToSystem
protected void releaseMemoryToSystem(long addr, long size) -
getAllocatedBytes
public long getAllocatedBytes() -
getReservedBytes
public long getReservedBytes()
-