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