Package org.apache.lucene.util.packed
Class PagedGrowableWriter
- java.lang.Object
-
- org.apache.lucene.util.LongValues
-
- org.apache.lucene.util.packed.AbstractPagedMutable<PagedGrowableWriter>
-
- org.apache.lucene.util.packed.PagedGrowableWriter
-
- All Implemented Interfaces:
Accountable
public final class PagedGrowableWriter extends AbstractPagedMutable<PagedGrowableWriter>
APagedGrowableWriter
. This class slices data into fixed-size blocks which have independent numbers of bits per value and grow on-demand.You should use this class instead of the
PackedLongValues
related ones only when you need random write-access. Otherwise this class will likely be slower and less memory-efficient.- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.util.LongValues
IDENTITY, ZEROES
-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Constructor Description PagedGrowableWriter(long size, int pageSize, int startBitsPerValue, float acceptableOverheadRatio)
Create a newPagedGrowableWriter
instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected long
baseRamBytesUsed()
protected PackedInts.Mutable
newMutable(int valueCount, int bitsPerValue)
protected PagedGrowableWriter
newUnfilledCopy(long newSize)
-
Methods inherited from class org.apache.lucene.util.packed.AbstractPagedMutable
fillPages, get, grow, grow, ramBytesUsed, resize, set, size, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
-
-
-
Constructor Detail
-
PagedGrowableWriter
public PagedGrowableWriter(long size, int pageSize, int startBitsPerValue, float acceptableOverheadRatio)
Create a newPagedGrowableWriter
instance.- Parameters:
size
- the number of values to store.pageSize
- the number of values per pagestartBitsPerValue
- the initial number of bits per valueacceptableOverheadRatio
- an acceptable overhead ratio
-
-
Method Detail
-
newMutable
protected PackedInts.Mutable newMutable(int valueCount, int bitsPerValue)
- Specified by:
newMutable
in classAbstractPagedMutable<PagedGrowableWriter>
-
newUnfilledCopy
protected PagedGrowableWriter newUnfilledCopy(long newSize)
- Specified by:
newUnfilledCopy
in classAbstractPagedMutable<PagedGrowableWriter>
-
baseRamBytesUsed
protected long baseRamBytesUsed()
- Overrides:
baseRamBytesUsed
in classAbstractPagedMutable<PagedGrowableWriter>
-
-