Class PeerControlSchedulerPrioritised
java.lang.Object
com.biglybt.core.peermanager.control.impl.PeerControlSchedulerImpl
com.biglybt.core.peermanager.control.impl.PeerControlSchedulerPrioritised
- All Implemented Interfaces:
ParameterListener
,PeerControlScheduler
,CoreStatsProvider
public class PeerControlSchedulerPrioritised
extends PeerControlSchedulerImpl
implements CoreStatsProvider
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Object
private int[]
private int[]
private long
private long
private long
private long
(package private) final List<PeerControlSchedulerPrioritised.instanceWrapper>
private long
private boolean
private final SpeedTokenDispenserPrioritised
Fields inherited from class com.biglybt.core.peermanager.control.impl.PeerControlSchedulerImpl
schedule_count, total_wait_time, useWeights, wait_count, yield_count
Fields inherited from interface com.biglybt.core.peermanager.control.PeerControlScheduler
SCHEDULE_PERIOD_MAX_CATCHUP, SCHEDULE_PERIOD_MILLIS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint[]
int[]
void
register
(PeerControlInstance instance) protected void
schedule()
void
unregister
(PeerControlInstance instance) void
Methods inherited from class com.biglybt.core.peermanager.control.impl.PeerControlSchedulerImpl
getSingleton, overrideAllWeightedPriorities, overrideWeightedPriorities, parameterChanged, start, updateAllScheduleOrdering, updateStats
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.biglybt.core.stats.CoreStatsProvider
updateStats
-
Field Details
-
instance_map
-
pending_registrations
-
registrations_changed
private volatile boolean registrations_changed -
latest_time
private volatile long latest_time -
instance_lock
-
tokenDispenser
-
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
-
PeerControlSchedulerPrioritised
public PeerControlSchedulerPrioritised()
-
-
Method Details
-
schedule
protected void schedule()- Specified by:
schedule
in classPeerControlSchedulerImpl
-
register
- Specified by:
register
in interfacePeerControlScheduler
-
unregister
- Specified by:
unregister
in interfacePeerControlScheduler
-
getSpeedTokenDispenser
- Specified by:
getSpeedTokenDispenser
in interfacePeerControlScheduler
-
updateScheduleOrdering
public void updateScheduleOrdering()- Specified by:
updateScheduleOrdering
in interfacePeerControlScheduler
-
getPeerCount
public int[] getPeerCount()- Specified by:
getPeerCount
in interfacePeerControlScheduler
-
getPieceCount
public int[] getPieceCount()- Specified by:
getPieceCount
in interfacePeerControlScheduler
-