Freigeben über


transformer-Klasse

Ein transformer-Meldungsblock ist ein geordneter propagator_block mit einem einzelnen Ziel und mehreren Quellen, der Meldungen eines Typs akzeptieren und eine unbegrenzte Anzahl von Meldungen eines anderen Typs speichern kann.

template<
   class _Input,
   class _Output
>
class transformer : public propagator_block<single_link_registry<ITarget<_Output>>, multi_link_registry<ISource<_Input>>>;

Parameter

  • _Input
    Der Nutzlasttyp von vom Puffer akzeptierten Meldungen.

  • _Output
    Der Nutzlasttyp der Meldungen, die vom Puffer gespeichert und weitergegeben wurden.

Mitglieder

Dd492812.collapse_all(de-de,VS.110).gifÖffentliche Konstruktoren

Name

Beschreibung

transformer::transformer-Konstruktor

Überladen.Erstellt einen transformer-Meldungsblock.

transformer::~transformer-Destruktor

Zerstört den transformer-Meldungsblock.

Dd492812.collapse_all(de-de,VS.110).gifGeschützte Methoden

Name

Beschreibung

transformer::accept_message-Methode

Akzeptiert eine Meldung, die von diesem transformer-Meldungsblock angeboten wurde, und überträgt den Besitz an den Aufrufer.

transformer::consume_message-Methode

Nimmt eine Meldung an, die zuvor von transformer angeboten und vom Ziel reserviert wurde, und überträgt den Besitz an den Aufrufer.

transformer::link_target_notification-Methode

Ein Rückruf, der meldet, dass ein neues Ziel mit diesem transformer-Meldungsblock verknüpft wurde.

transformer::propagate_message-Methode

Übergibt eine Meldung asynchron von einem ISource-Block an diesen transformer-Meldungsblock.Wird bei Aufruf durch einen Quellblock von der propagate-Methode aufgerufen.

transformer::propagate_to_any_targets-Methode

Führt die Transformator auf dem Feature für Eingabemeldungen aus.

transformer::release_message-Methode

Gibt die Reservierung einer vorherigen Meldung frei.(Überschreibt source_block::release_message.)

transformer::reserve_message-Methode

Reserviert eine Meldung, die zuvor von diesem transformer-Meldungsblock angeboten wurde.(Überschreibt source_block::reserve_message.)

transformer::resume_propagation-Methode

Setzt die Weitergabe fort, nachdem eine Reservierung freigegeben wurde.(Überschreibt source_block::resume_propagation.)

transformer::send_message-Methode

Übergibt eine Meldung synchron von einem ISource-Block an diesen transformer-Meldungsblock.Wird bei Aufruf durch einen Quellblock von der send-Methode aufgerufen.

transformer::supports_anonymous_source-Methode

Überschreibt die supports_anonymous_source-Methode, um anzugeben, dass diese Blockade die Meldungen akzeptiert, die von dieser Quelle bereitgestellt werden, die nicht verknüpft ist.ITarget::supports_anonymous_source Überschreibungen (.)

Hinweise

Weitere Informationen finden Sie unter Asynchrone Nachrichtenblöcke.

Vererbungshierarchie

ISource

ITarget

source_block

propagator_block

transformer

Anforderungen

Header: agents.h

Namespace: Parallelität

Siehe auch

Referenz

concurrency-Namespace

call-Klasse