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 sottoposto a override 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 viene trovata come 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.

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 viene trovata come vuota.

virtual void process_incoming_message() = 0;

Osservazioni:

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

sync_send

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.

wait

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 concurrency
Classe ordered_message_processor