net.excentrics.bandWidth
クラス BandWidthController
java.lang.Object
net.excentrics.bandWidth.BandWidthController
class BandWidthController
- extends java.lang.Object
このクラスはスロットリングを成功させるため内部的に使用される。
- 作成者:
- hisato
| クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
bandWidth
private double bandWidth
timeList
private java.util.LinkedList<java.lang.Long> timeList
sizeList
private java.util.LinkedList<java.lang.Integer> sizeList
cycle
private long cycle
defaultCycle
private static final long defaultCycle
- 関連項目:
- 定数フィールド値
bytePerCycle
private int bytePerCycle
defaultSpeedCount
private static final int defaultSpeedCount
- 関連項目:
- 定数フィールド値
speedCount
private int speedCount
min_cycle
private static final int min_cycle
- 関連項目:
- 定数フィールド値
BandWidthController
public BandWidthController()
getBandWidth
public double getBandWidth()
setBandWidth
public void setBandWidth(double bandWidth)
- パラメータ:
bandWidth - 帯域をbps(bit per second) で与える。0が与えられた場合帯域制限を行わない。
setBytePerCycle
private void setBytePerCycle()
getCycle
public long getCycle()
setCycle
public void setCycle(long cycle)
preWrite
public net.excentrics.bandWidth.SizeAndInterval preWrite(int bufferSize)
- パラメータ:
bufferSize - 使用しているバッファのサイズ
- 戻り値:
- 書き込むべきサイズ(byte)、および次回呼び出しまでの間隔(ミリ秒)を返す
postWrite
public void postWrite(int writtenSize)
throws net.excentrics.bandWidth.AsymmetricalCallException
- パラメータ:
writtenSize - 実際に書き込まれたサイズ
- 例外:
net.excentrics.bandWidth.AsymmetricalCallException - preWriteを呼び出す前にpostWriteが呼ばれた時
calculationSizeForWrite
private net.excentrics.bandWidth.SizeAndInterval calculationSizeForWrite(int bufferSize)
- 戻り値:
- スロットリングを成功させるために書き込まれるべきサイズをバイトで返す。 また、次の書き込みまでの期間をミリ秒で返す。
書き込むサイズに制限が必要ない場合は-1を返す。
getCurrentBps
private double getCurrentBps()