ark::pipeline::CallbackExecutionManager
Defined in header “ark/pipeline/callback_execution_manager.hh”.
A callback execution manager is responsible for ensuring that a stage’s callbacks are only executing once-at-a-time (ie, not executing in parallel). It also provides mechanisms for tracking timing information.
Methods
-
CallbackExecutionManager(concurrency::ThreadPoolPtr thread_pool, StageInterfacePtr stage)
Constructor. Initializes a callback execution manager for the given stage. The name is used for debugging and profiling. -
~CallbackExecutionManager()
Destructor. -
void schedule_if_needed()
Schedules the given work, if needed. If the subscriber is already scheduled, this does nothing. -
void execute()
Invoked when it is time to execute the subscriber that this callback execution manager is in charge of.