A timer messaging block is a single-target source_block capable of sending a message to its target after a specified time period has elapsed or at specific intervals.
template< class _Type > class timer : public Concurrency::details::_Timer, public source_block<single_link_registry<ITarget<_Type>>>;
Stops the timer messaging block. If it is a repeating timer messaging block, it can be restarted with a subsequent start() call. For non-repeating timers, this has the same effect as a stop call.
Starts the timer messaging block. The specified number of milliseconds after this is called, the specified value will be propagated downstream as a message.
Stops the timer messaging block.
Accepts a message that was offered by this timer messaging block, transferring ownership to the caller.
Consumes a message previously offered by the timer and reserved by the target, transferring ownership to the caller.
A callback that notifies that a new target has been linked to this timer messaging block.
Tries to offer the message produced by the timer block to all of the linked targets.
Releases a previous message reservation. (Overrides source_block::release_message.)
Reserves a message previously offered by this timer messaging block. (Overrides source_block::reserve_message.)
Resumes propagation after a reservation has been released. (Overrides source_block::resume_propagation.)