public final class PagedMutable extends LongValues
PagedMutable
. This class slices data into fixed-size blocks
which have the same number of bits per value. It can be a useful replacement
for PackedInts.Mutable
to store more than 2B values.IDENTITY
Constructor and Description |
---|
PagedMutable(long size,
int pageSize,
int bitsPerValue,
float acceptableOverheadRatio)
Create a new
PagedMutable instance. |
Modifier and Type | Method and Description |
---|---|
protected long |
baseRamBytesUsed() |
protected void |
fillPages() |
long |
get(long index)
Get value at
index . |
T |
grow()
Similar to
ArrayUtil.grow(long[]) . |
T |
grow(long minSize)
Similar to
ArrayUtil.grow(long[], int) . |
protected PackedInts.Mutable |
newMutable(int valueCount,
int bitsPerValue) |
protected PagedMutable |
newUnfilledCopy(long newSize) |
long |
ramBytesUsed()
Return the memory usage of this object in bytes.
|
T |
resize(long newSize)
Create a new copy of size
newSize based on the content of
this buffer. |
void |
set(long index,
long value)
Set value at
index . |
long |
size()
The number of values.
|
String |
toString() |
get
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getChildResources
public PagedMutable(long size, int pageSize, int bitsPerValue, float acceptableOverheadRatio)
PagedMutable
instance.size
- the number of values to store.pageSize
- the number of values per pagebitsPerValue
- the number of bits per valueacceptableOverheadRatio
- an acceptable overhead ratioprotected PackedInts.Mutable newMutable(int valueCount, int bitsPerValue)
protected PagedMutable newUnfilledCopy(long newSize)
protected long baseRamBytesUsed()
protected final void fillPages()
public final long size()
public final long get(long index)
LongValues
index
.get
in class LongValues
public final void set(long index, long value)
index
.public long ramBytesUsed()
Accountable
ramBytesUsed
in interface Accountable
public final T resize(long newSize)
newSize
based on the content of
this buffer. This method is much more efficient than creating a new
instance and copying values one by one.public final T grow(long minSize)
ArrayUtil.grow(long[], int)
.public final T grow()
ArrayUtil.grow(long[])
.Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.