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 Details

    • singletons

      private static final PeerControlSchedulerImpl[] 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

      public void parameterChanged(String parameterName)
      Description copied from interface: ParameterListener
      Called, 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:
      parameterChanged in interface ParameterListener
      Parameters:
      parameterName - the name of the parameter that has changed
    • getSingleton

      public static PeerControlScheduler getSingleton(int id)
    • overrideAllWeightedPriorities

      public static void overrideAllWeightedPriorities(boolean b)
    • updateAllScheduleOrdering

      public static void updateAllScheduleOrdering()
    • start

      protected void start()
    • updateStats

      public void updateStats(Set types, Map values)
      Specified by:
      updateStats in interface CoreStatsProvider
    • schedule

      protected abstract void schedule()
    • overrideWeightedPriorities

      public void overrideWeightedPriorities(boolean override)
      Specified by:
      overrideWeightedPriorities in interface PeerControlScheduler
      Parameters:
      override - , set to true to disable weighted priorities, false to use user-configureable default