public class PagePool extends Object
| Modifier and Type | Field and Description |
|---|---|
protected long |
freePageListPtr
Pointer to the address of the free page list.
|
protected int |
idx
Segment index.
|
protected long |
lastAllocatedIdxPtr |
protected long |
pagesBase
Pages base.
|
protected AtomicInteger |
pagesCntr
Pool pages counter.
|
protected DirectMemoryRegion |
region
Direct memory region.
|
| Modifier | Constructor and Description |
|---|---|
protected |
PagePool(int idx,
DirectMemoryRegion region,
int sysPageSize,
OffheapReadWriteLock rwLock) |
| Modifier and Type | Method and Description |
|---|---|
long |
borrowOrAllocateFreePage(int tag)
Allocates a new free page.
|
int |
pages() |
int |
releaseFreePage(long relPtr) |
int |
size() |
protected final int idx
protected final DirectMemoryRegion region
protected final AtomicInteger pagesCntr
protected long lastAllocatedIdxPtr
protected long freePageListPtr
protected long pagesBase
protected PagePool(int idx,
DirectMemoryRegion region,
int sysPageSize,
OffheapReadWriteLock rwLock)
idx - Index.region - Regionpublic long borrowOrAllocateFreePage(int tag)
throws GridOffHeapOutOfMemoryException
tag - Tag to initialize page RW lock.GridOffHeapOutOfMemoryException - If failed to allocate new free page.public int releaseFreePage(long relPtr)
relPtr - Relative pointer to free.public int pages()
public int size()
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.10.0 Release Date : March 10 2021