Freigeben über


message_processor-Klasse

Die message_processor-Klasse ist die abstrakte Basisklasse für die Verarbeitung von message-Objekten. Für die Reihenfolge der Meldungen besteht keine Garantie.

Syntax

template<class T>
class message_processor;

Parameter

T
Der Datentyp der Nutzlast innerhalb von Nachrichten, die von diesem message_processor Objekt behandelt werden.

Member

Öffentliche Typedefs

Name Beschreibung
type Ein Typalias für T.

Öffentliche Methoden

Name Beschreibung
async_send Wenn sie in einer abgeleiteten Klasse überschrieben werden, werden Nachrichten asynchron in den Block platziert.
sync_send Wenn nachrichten in einer abgeleiteten Klasse überschrieben werden, werden Nachrichten synchron in den Block gesetzt.
wait Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wartet sie, bis alle asynchronen Vorgänge abgeschlossen sind.

Geschützte Methoden

Name Beschreibung
process_incoming_message Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Weiterleitung von Nachrichten in den Block ausgeführt. Wird einmal aufgerufen, wenn eine neue Nachricht hinzugefügt wird und die Warteschlange leer ist.

Vererbungshierarchie

message_processor

Anforderungen

Header: agents.h

Namespace: Parallelität

async_send

Wenn sie in einer abgeleiteten Klasse überschrieben werden, werden Nachrichten asynchron in den Block platziert.

virtual void async_send(_Inout_opt_ message<T>* _Msg) = 0;

Parameter

_Msg
Ein message Objekt, das asynchron gesendet werden soll.

Hinweise

Prozessorimplementierungen sollten diese Methode überschreiben.

process_incoming_message

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Weiterleitung von Nachrichten in den Block ausgeführt. Wird einmal aufgerufen, wenn eine neue Nachricht hinzugefügt wird und die Warteschlange leer ist.

virtual void process_incoming_message() = 0;

Hinweise

Implementierungen von Nachrichtenblocks sollten diese Methode überschreiben.

sync_send

Wenn nachrichten in einer abgeleiteten Klasse überschrieben werden, werden Nachrichten synchron in den Block gesetzt.

virtual void sync_send(_Inout_opt_ message<T>* _Msg) = 0;

Parameter

_Msg
Ein message Objekt, das synchron gesendet werden soll.

Hinweise

Prozessorimplementierungen sollten diese Methode überschreiben.

wait

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wartet sie, bis alle asynchronen Vorgänge abgeschlossen sind.

virtual void wait() = 0;

Hinweise

Prozessorimplementierungen sollten diese Methode überschreiben.

Siehe auch

Concurrency-Namespace
ordered_message_processor-Klasse