Class SpeedTokenDispenserPrioritised
java.lang.Object
com.biglybt.core.peermanager.control.impl.SpeedTokenDispenserPrioritised
- All Implemented Interfaces:
SpeedTokenDispenser
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate long
private static final int
private static final int
private static final int
private long
private long
private int
private long
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
dispense
(int numberOfChunks, int chunkSize) int
peek
(int chunkSize) void
refill()
void
returnUnusedChunks
(int unused, int chunkSize) void
update
(long newTimeMono)
-
Field Details
-
rateKiB
private int rateKiB -
threshold
private long threshold -
bucket
private long bucket -
lastTimeMono
private long lastTimeMono -
currentTimeMono
private long currentTimeMono -
BUCKET_THRESHOLD_LOWER_BOUND
private static final int BUCKET_THRESHOLD_LOWER_BOUND- See Also:
-
BUCKET_RESPONSE_TIME
private static final int BUCKET_RESPONSE_TIME- See Also:
-
BUCKET_THRESHOLD_FACTOR
private static final int BUCKET_THRESHOLD_FACTOR- See Also:
-
-
Constructor Details
-
SpeedTokenDispenserPrioritised
public SpeedTokenDispenserPrioritised()
-
-
Method Details
-
update
public void update(long newTimeMono) -
refill
public void refill() -
dispense
public int dispense(int numberOfChunks, int chunkSize) - Specified by:
dispense
in interfaceSpeedTokenDispenser
-
returnUnusedChunks
public void returnUnusedChunks(int unused, int chunkSize) - Specified by:
returnUnusedChunks
in interfaceSpeedTokenDispenser
-
peek
public int peek(int chunkSize) - Specified by:
peek
in interfaceSpeedTokenDispenser
-