Class LazyMemorySegmentPool
- java.lang.Object
-
- org.apache.flink.table.runtime.util.LazyMemorySegmentPool
-
- All Implemented Interfaces:
Closeable,AutoCloseable,org.apache.flink.core.memory.MemorySegmentSource,MemorySegmentPool
public class LazyMemorySegmentPool extends Object implements MemorySegmentPool, Closeable
MemorySegmentPoolthat lazy allocate memory pages fromMemoryManager.
-
-
Constructor Summary
Constructors Constructor Description LazyMemorySegmentPool(Object owner, org.apache.flink.runtime.memory.MemoryManager memoryManager, int maxPages)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<org.apache.flink.core.memory.MemorySegment>allocateSegments(int required)voidcleanCache()voidclose()intfreePages()org.apache.flink.core.memory.MemorySegmentnextSegment()intpageSize()Get the page size of each page this pool holds.voidreturnAll(List<org.apache.flink.core.memory.MemorySegment> memory)Return all pages back into this pool.voidreturnPage(org.apache.flink.core.memory.MemorySegment segment)
-
-
-
Constructor Detail
-
LazyMemorySegmentPool
public LazyMemorySegmentPool(Object owner, org.apache.flink.runtime.memory.MemoryManager memoryManager, int maxPages)
-
-
Method Detail
-
pageSize
public int pageSize()
Description copied from interface:MemorySegmentPoolGet the page size of each page this pool holds.- Specified by:
pageSizein interfaceMemorySegmentPool- Returns:
- the page size
-
returnAll
public void returnAll(List<org.apache.flink.core.memory.MemorySegment> memory)
Description copied from interface:MemorySegmentPoolReturn all pages back into this pool.- Specified by:
returnAllin interfaceMemorySegmentPool- Parameters:
memory- the pages which want to be returned.
-
returnPage
public void returnPage(org.apache.flink.core.memory.MemorySegment segment)
-
nextSegment
public org.apache.flink.core.memory.MemorySegment nextSegment()
- Specified by:
nextSegmentin interfaceorg.apache.flink.core.memory.MemorySegmentSource
-
allocateSegments
public List<org.apache.flink.core.memory.MemorySegment> allocateSegments(int required)
-
freePages
public int freePages()
- Specified by:
freePagesin interfaceMemorySegmentPool- Returns:
- Free page number.
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
cleanCache
public void cleanCache()
-
-