Class PeerControlSchedulerBasic
java.lang.Object
com.biglybt.core.peermanager.control.impl.PeerControlSchedulerImpl
com.biglybt.core.peermanager.control.impl.PeerControlSchedulerBasic
- All Implemented Interfaces:
ParameterListener, PeerControlScheduler, CoreStatsProvider
public class PeerControlSchedulerBasic
extends PeerControlSchedulerImpl
implements CoreStatsProvider
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Objectprivate longprivate int[]private int[]private longprivate longprivate longprivate longprivate final List<PeerControlSchedulerBasic.instanceWrapper> private longprivate final Randomprivate booleanprivate final SpeedTokenDispenserBasicFields inherited from class PeerControlSchedulerImpl
schedule_count, total_wait_time, useWeights, wait_count, yield_countFields inherited from interface PeerControlScheduler
SCHEDULE_PERIOD_MAX_CATCHUP, SCHEDULE_PERIOD_MILLIS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint[]int[]voidregister(PeerControlInstance instance) protected voidschedule()voidunregister(PeerControlInstance instance) voidMethods inherited from class PeerControlSchedulerImpl
getSingleton, overrideAllWeightedPriorities, overrideWeightedPriorities, parameterChanged, start, updateAllScheduleOrdering, updateStatsMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CoreStatsProvider
updateStats
-
Field Details
-
random
-
instance_map
-
pending_registrations
-
registrations_changed
private volatile boolean registrations_changed -
instance_lock
-
tokenDispenser
-
latest_time
private long latest_time -
last_lag_log
private long last_lag_log -
next_peer_count_time
private long next_peer_count_time -
next_piece_count_time
private long next_piece_count_time -
peer_count_active_time
private volatile long peer_count_active_time -
piece_count_active_time
private volatile long piece_count_active_time -
last_peer_count
private volatile int[] last_peer_count -
last_piece_count
private volatile int[] last_piece_count
-
-
Constructor Details
-
PeerControlSchedulerBasic
public PeerControlSchedulerBasic()
-
-
Method Details
-
schedule
protected void schedule()- Specified by:
schedulein classPeerControlSchedulerImpl
-
register
- Specified by:
registerin interfacePeerControlScheduler
-
unregister
- Specified by:
unregisterin interfacePeerControlScheduler
-
getSpeedTokenDispenser
- Specified by:
getSpeedTokenDispenserin interfacePeerControlScheduler
-
updateScheduleOrdering
public void updateScheduleOrdering()- Specified by:
updateScheduleOrderingin interfacePeerControlScheduler
-
getPeerCount
public int[] getPeerCount()- Specified by:
getPeerCountin interfacePeerControlScheduler
-
getPieceCount
public int[] getPieceCount()- Specified by:
getPieceCountin interfacePeerControlScheduler
-