Class PeerControlSchedulerImpl
java.lang.Object
com.biglybt.core.peermanager.control.impl.PeerControlSchedulerImpl
- All Implemented Interfaces:
ParameterListener, PeerControlScheduler, CoreStatsProvider
- Direct Known Subclasses:
PeerControlSchedulerBasic, PeerControlSchedulerPrioritised
public abstract class PeerControlSchedulerImpl
extends Object
implements PeerControlScheduler, CoreStatsProvider, ParameterListener
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected longprivate static final PeerControlSchedulerImpl[]protected longprotected booleanprotected longprotected longFields inherited from interface PeerControlScheduler
SCHEDULE_PERIOD_MAX_CATCHUP, SCHEDULE_PERIOD_MILLIS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic PeerControlSchedulergetSingleton(int id) static voidoverrideAllWeightedPriorities(boolean b) voidoverrideWeightedPriorities(boolean override) voidparameterChanged(String parameterName) Called, when a parameter has changed.protected abstract voidschedule()protected voidstart()static voidvoidupdateStats(Set types, Map values) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface PeerControlScheduler
getPeerCount, getPieceCount, getSpeedTokenDispenser, register, unregister, updateScheduleOrdering
-
Field Details
-
singletons
-
useWeights
protected boolean useWeights -
schedule_count
protected long schedule_count -
wait_count
protected long wait_count -
yield_count
protected long yield_count -
total_wait_time
protected long total_wait_time
-
-
Constructor Details
-
PeerControlSchedulerImpl
protected PeerControlSchedulerImpl()
-
-
Method Details
-
parameterChanged
Description copied from interface:ParameterListenerCalled, when a parameter has changed. The listener could only react if the parameter name is relevant. Or the listener can just read all parameters again.- Specified by:
parameterChangedin interfaceParameterListener- Parameters:
parameterName- the name of the parameter that has changed
-
getSingleton
-
overrideAllWeightedPriorities
public static void overrideAllWeightedPriorities(boolean b) -
updateAllScheduleOrdering
public static void updateAllScheduleOrdering() -
start
protected void start() -
updateStats
- Specified by:
updateStatsin interfaceCoreStatsProvider
-
schedule
protected abstract void schedule() -
overrideWeightedPriorities
public void overrideWeightedPriorities(boolean override) - Specified by:
overrideWeightedPrioritiesin interfacePeerControlScheduler- Parameters:
override- , set to true to disable weighted priorities, false to use user-configureable default
-