Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
A join messaging block is a single-target, multi-source, ordered propagator_block which combines together messages of type _Type from each of its sources.
template<
class _Type,
join_type _Jtype = non_greedy
>
class join : public propagator_block<single_link_registry<ITarget<std::vector<_Type>>>, multi_link_registry<ISource<_Type>>>;
Parameters
_Type
The payload type of the messages joined and propagated by the block._Jtype
The kind of join block this is, either greedy or non_greedy
Members
Public Constructors
Name |
Description |
|---|---|
Overloaded. Constructs a join messaging block. |
|
Destroys the join block. |
Protected Methods
Name |
Description |
|---|---|
Accepts a message that was offered by this join messaging block, transferring ownership to the caller. |
|
Consumes a message previously offered by the join messaging block and reserved by the target, transferring ownership to the caller. |
|
A callback that notifies that a new target has been linked to this join messaging block. |
|
Asynchronously passes a message from an ISource block to this join messaging block. It is invoked by the propagate method, when called by a source block. |
|
Constructs an output message containing an input message from each source when they have all propagated a message. Sends this output message out to each of its targets. |
|
Releases a previous message reservation. (Overrides source_block::release_message.) |
|
Reserves a message previously offered by this join messaging block. (Overrides source_block::reserve_message.) |
|
Resumes propagation after a reservation has been released. (Overrides source_block::resume_propagation.) |
Remarks
For more information, see Asynchronous Message Blocks.
Inheritance Hierarchy
join
Requirements
Header: agents.h
Namespace: concurrency