Classe multitype_join

Un blocco della messaggistica multitype_join è un blocco multi-origine, a destinazione singola, che combina messaggi di diverso tipo da ciascuna delle sue origini e offre una tupla dei messaggi combinati alle sue destinazioni.

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

Parametri

  • _Type
    Tipo di payload tuple dei messaggi uniti e propagati dal blocco.

  • _Jtype
    Il tipo di blocco join è greedy o non_greedy

Membri

Typedef pubblici

Nome

Oggetto di descrizione

type

Tipo alias per _Type.

Costruttori pubblici

Nome

Oggetto di descrizione

Costruttore multitype_join::multitype_join

Metodo di overload. Costruisce un blocco della messaggistica multitype_join.

Distruttore multitype_join::~multitype_join

Distrugge il blocco della messaggistica multitype_join.

Metodi pubblici

Nome

Oggetto di descrizione

Metodo multitype_join::accept

Accetta un messaggio offerto dal blocco multitype_join, trasferendo la proprietà al chiamante.

Metodo multitype_join::acquire_ref

Acquisisce un conteggio dei riferimenti su questo blocco della messaggistica multitype_join, per impedire eliminazione.

Metodo multitype_join::consume

Utilizza un messaggio precedentemente offerto dal blocco di messaggistica multitype_join e riservato correttamente dalla destinazione trasferendo la proprietà al chiamante.

Metodo multitype_join::link_target

Connette un blocco di destinazione al blocco della messaggistica multitype_join.

Metodo multitype_join::release

Consente di rilasciare una prenotazione corretta del messaggio precedente.

Metodo multitype_join::release_ref

Consente di rilasciare un conteggio dei riferimenti su tale blocco della messaggistica multiple_join.

Metodo multitype_join::reserve

Consente di riservare un messaggio messo a disposizione in precedenza da tale blocco della messaggistica multitype_join.

Metodo multitype_join::unlink_target

Consente di scollegare un blocco di destinazione dal blocco della messaggistica multitype_join.

Metodo multitype_join::unlink_targets

Consente di scollegare tutte le destinazioni dal blocco della messaggistica multitype_join. (Esegue l'override di ISource::unlink_targets.)

Note

Per ulteriori informazioni, vedere Blocchi dei messaggi asincroni.

Gerarchia di ereditarietà

ISource

multitype_join

Requisiti

Header: agents.h

Spazio dei nomi: Concurrency

Vedere anche

Riferimenti

Spazio dei nomi Concurrency

Classe choice

Classe join

Enumerazione join_type

Funzione make_join

Funzione make_greedy_join

tuple Class