public class AdaptiveBufferSizePredictor extends Object implements BufferSizePredictor
BufferSizePredictorthat automatically increases and decreases the predicted buffer size on feed back.
It gradually increases the expected number of bytes if the previous buffer fully filled the allocated buffer. It gradually decreases the expected number of bytes if the read operation was not able to fill a certain amount of the allocated buffer two times consecutively. Otherwise, it keeps returning the same prediction. TODO: Object type hints could be useful at giving more type-specific predictions
|Constructor and Description|
Creates a new predictor with the default parameters.
Creates a new predictor with the specified parameters.
|Modifier and Type||Method and Description|
Provide the next buffer size taking in account the object to store in the buffer.
Record the size of the of data in the last buffer used.
512, does not go down below
16, and does not go up above
public AdaptiveBufferSizePredictor(int minimum, int initial, int maximum)
minimum- the inclusive lower bound of the expected buffer size
initial- the initial buffer size when no feed back was received
maximum- the inclusive upper bound of the expected buffer size
public int nextSize(Object obj)
obj- instance that will be stored in the buffer
public void recordSize(int previousSize)
previousSize- int representing the size of the last object buffered.
Copyright © 2014 JBoss, a division of Red Hat. All Rights Reserved.