Export (0) Print
Expand All

multitype_join Class

A multitype_join messaging block is a multi-source, single-target messaging block that combines together messages of different types from each of its sources and offers a tuple of the combined messages to its targets.

template<
   typename _Type,
   join_type _Jtype = non_greedy
>
class multitype_join: public ISource<typename _Unwrap<_Type>::type>;

_Type

The tuple payload type of the messages joined and propagated by the block.

_Jtype

The kind of join block this is, either greedy or non_greedy

Name

Description

type

A type alias for _Type.

Name

Description

multitype_join::multitype_join Constructor

Overloaded. Constructs a multitype_join messaging block.

multitype_join::~multitype_join Destructor

Destroys the multitype_join messaging block.

Name

Description

multitype_join::accept Method

Accepts a message that was offered by this multitype_join block, transferring ownership to the caller.

multitype_join::acquire_ref Method

Acquires a reference count on this multitype_join messaging block, to prevent deletion.

multitype_join::consume Method

Consumes a message previously offered by the multitype_join messaging block and successfully reserved by the target, transferring ownership to the caller.

multitype_join::link_target Method

Links a target block to this multitype_join messaging block.

multitype_join::release Method

Releases a previous successful message reservation.

multitype_join::release_ref Method

Releases a reference count on this multiple_join messaging block.

multitype_join::reserve Method

Reserves a message previously offered by this multitype_join messaging block.

multitype_join::unlink_target Method

Unlinks a target block from this multitype_join messaging block.

multitype_join::unlink_targets Method

Unlinks all targets from this multitype_join messaging block. (Overrides ISource::unlink_targets.)

For more information, see Asynchronous Message Blocks.

Header: agents.h

Namespace: concurrency

Show:
© 2014 Microsoft