vt::sched::SuspendedUnits struct

Holds RunnableNew pointers that have been suspended awaiting a resumption when a dependency clears or the thread is otherwise resumed. Once a runnable is put here, nothing will check it until some other component calls resumeRunnable on it with the appropriate thread ID.

Public types

using RunnablePtrType = runnable::RunnableNew*

Public functions

void addSuspended(ThreadIDType tid, RunnablePtrType runnable, PriorityType p = default_priority)
Add a suspended runnable that is running in a thread.
void resumeRunnable(ThreadIDType tid)
Resume a thread that is associated with a runnable that is currently suspended.
template<typename SerializerT>
void serializer(SerializerT& s)

Function documentation

void vt::sched::SuspendedUnits::addSuspended(ThreadIDType tid, RunnablePtrType runnable, PriorityType p = default_priority)

Add a suspended runnable that is running in a thread.

Parameters
tid in the thread ID it is running in, now suspended
runnable in the runnable
in the priority to resume with (optional)

void vt::sched::SuspendedUnits::resumeRunnable(ThreadIDType tid)

Resume a thread that is associated with a runnable that is currently suspended.

Parameters
tid in the suspended thread ID