template <typename Thread>

class RunQueue

Defined at line 30 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

Forward-declared; defined in

<lib

/sched/run-queue.h>

Public Methods

void ~RunQueue<Thread> ()

Defined at line 43 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

iterator begin ()

Defined at line 51 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

iterator end ()

Defined at line 52 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

size_t size ()

Returns the number of queued, ready threads.

Defined at line 55 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

bool empty ()

Whether no threads are currently queued.

Defined at line 58 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

const Thread * current_thread ()

Returns the currently scheduled thread, if there is one.

Defined at line 61 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

Duration CapacityOf (const Thread & thread)

The total duration within the thread's activation period in which the

thread is expected to complete its firm and flexible work . This can be

regarded as a measure of the expected worst-case runtime given current

bandwidth subscription.

Defined at line 67 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

Duration FlexibleCapacityOf (const Thread & thread)

Given current bandwidth subscription, the duration of time we expect to be

allotted to a thread's flexible work within its period.

Defined at line 73 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

Duration TimesliceRemainingOn (const Thread & thread)

The remaining time expected for the thread to be scheduled within its

current activation period.

Defined at line 80 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

bool IsExpired (const Thread & thread, Time now)

Whether the thread has completed its work for the current activation

period or activation period itself has ended.

Defined at line 86 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

void Queue (Thread & thread, Time now)

Queues the provided thread, given the current time (so as to ensure that

the thread is or will be active).

Defined at line 92 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

void Dequeue (Thread & thread)

Dequeues the thread from the run queue (provided the thread was already

contained).

Defined at line 112 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

SelectNextThreadResult SelectNextThread (Time now)

Selects the next thread to run and also gives the time at which the

preemption timer should fire for the subsequent round of scheduling.

See //zircon/kernel/lib/sched/README.md#thread-selection for more detail on

the behavior of this method.

Defined at line 130 of file ../../zircon/kernel/lib/sched/include/lib/sched/run-queue.h

Records