Condividi tramite


Classe message_processor

La classe message_processor rappresenta la classe base astratta per l'elaborazione degli oggetti message. Non esiste garanzia sull'ordinamento dei messaggi.

Sintassi

template<class T>
class message_processor;

Parametri

T
Tipo di dati del payload all'interno dei messaggi gestiti da questo message_processor oggetto.

Membri

Typedef pubblici

Nome Descrizione
type Alias di tipo per T.

Metodi pubblici

Nome Descrizione
async_send Quando sottoposto a override in una classe derivata, inserisce i messaggi nel blocco in modo asincrono.
sync_send Quando viene sovrascritto in una classe derivata, inserisce i messaggi nel blocco in modo sincrono.
aspettare Quando sottoposto a override in una classe derivata, attende il completamento di tutte le operazioni asincrone.

Metodi protetti

Nome Descrizione
process_incoming_message Quando sottoposto a override in una classe derivata, esegue l'elaborazione in avanti dei messaggi nel blocco. Chiamato una volta ogni volta che viene aggiunto un nuovo messaggio e la coda risulta vuota.

Gerarchia di ereditarietà

message_processor

Requisiti

Intestazione: agents.h

Spazio dei nomi: Concurrency

async_send

Quando sottoposto a override in una classe derivata, inserisce i messaggi nel blocco in modo asincrono.

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

Parametri

_Msg
Oggetto message da inviare in modo asincrono.

Osservazioni:

Le implementazioni del processore devono eseguire l'override di questo metodo.

processa_messaggio_in_arrivo

Quando sottoposto a override in una classe derivata, esegue l'elaborazione in avanti dei messaggi nel blocco. Chiamato ogni volta che viene aggiunto un nuovo messaggio e la coda è vuota.

virtual void process_incoming_message() = 0;

Osservazioni:

Le implementazioni del blocco di messaggi devono eseguire l'override di questo metodo.

sincronizzare_invio

Quando sottoposto a override in una classe derivata, inserisce i messaggi nel blocco in modo sincrono.

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

Parametri

_Msg
Oggetto message da inviare in modo sincrono.

Osservazioni:

Le implementazioni del processore devono eseguire l'override di questo metodo.

attendere

Quando sottoposto a override in una classe derivata, attende il completamento di tutte le operazioni asincrone.

virtual void wait() = 0;

Osservazioni:

Le implementazioni del processore devono eseguire l'override di questo metodo.

Vedi anche

Spazio dei nomi concorrenza
Classe ordered_message_processor