Class SpeedTokenDispenserPrioritised

java.lang.Object
com.biglybt.core.peermanager.control.impl.SpeedTokenDispenserPrioritised
All Implemented Interfaces:
SpeedTokenDispenser

public class SpeedTokenDispenserPrioritised extends Object implements SpeedTokenDispenser
  • 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 interface SpeedTokenDispenser
    • returnUnusedChunks

      public void returnUnusedChunks(int unused, int chunkSize)
      Specified by:
      returnUnusedChunks in interface SpeedTokenDispenser
    • peek

      public int peek(int chunkSize)
      Specified by:
      peek in interface SpeedTokenDispenser