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 com.biglybt.core.peermanager.control.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 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.biglybt.core.peermanager.control.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
-