Sdílet prostřednictvím


ordered_message_processor – třída

Je to ordered_message_processor bloky message_processor zpráv, které umožňují zpracovávat zprávy v pořadí, v jakém byly přijaty.

Syntaxe

template<class T>
class ordered_message_processor : public message_processor<T>;

Parametry

T
Typ datové části zpráv zpracovávaných procesorem.

Členové

Veřejné definice typedef

Název Popis
type Alias typu pro T.

Veřejné konstruktory

Název Popis
ordered_message_processor ordered_message_processor Vytvoří objekt.
~ordered_message_processor Destruktor ordered_message_processor Zničí objekt.

Veřejné metody

Název Popis
async_send Asynchronně zařadí zprávy do fronty a spustí úlohu zpracování, pokud jste to ještě neudělali. (Přepsání message_processor::async_send.)
inicializovat Inicializuje ordered_message_processor objekt s příslušnou funkcí zpětného volání, plánovačem a skupinou plánů.
initialize_batched_processing Inicializace dávkového zpracování zpráv
sync_send Synchronně zařadí zprávy do fronty a spustí úlohu zpracování, pokud jste to ještě neudělali. (Přepsání message_processor::sync_send.)
Počkej Číselník specifický pro procesor použitý v destruktory bloků zpráv, aby se zajistilo, že všechny úlohy asynchronního zpracování mají čas dokončit před zničením bloku. (Přepsání message_processor::wait.)

Chráněné metody

Název Popis
process_incoming_message Funkce zpracování, která se nazývá asynchronně. Odklikuje zprávy a začne je zpracovávat. (Přepisuje message_processor::p rocess_incoming_message.)

Hierarchie dědičnosti

message_processor

ordered_message_processor

Požadavky

Hlavička: agents.h

Obor názvů: souběžnost

async_send

Asynchronně zařadí zprávy do fronty a spustí úlohu zpracování, pokud jste to ještě neudělali.

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

Parametry

_Msg
Ukazatel na zprávu.

inicializovat

Inicializuje ordered_message_processor objekt s příslušnou funkcí zpětného volání, plánovačem a skupinou plánů.

void initialize(
    _Inout_opt_ Scheduler* _PScheduler,
    _Inout_opt_ ScheduleGroup* _PScheduleGroup,
    _Handler_method const& _Handler);

Parametry

_PScheduler
Ukazatel na plánovač, který se má použít pro plánování lehkých úkolů.

_PScheduleGroup
Ukazatel na skupinu plánů, která se má použít pro plánování lehkých úkolů.

_Obslužná rutina
Tryctor obslužné rutiny vyvolaný během zpětného volání.

initialize_batched_processing

Inicializace dávkového zpracování zpráv

virtual void initialize_batched_processing(
    _Handler_method const& _Processor,
    _Propagator_method const& _Propagator);

Parametry

_Procesor
Functor procesoru byl vyvolán během zpětného volání.

_Propagátor
Šíření functor vyvolá během zpětného volání.

ordered_message_processor

ordered_message_processor Vytvoří objekt.

ordered_message_processor();

Poznámky

Tím ordered_message_processor se neplánuje asynchronní ani synchronní obslužné rutiny, dokud initialize se funkce nevolá.

~ordered_message_processor

ordered_message_processor Zničí objekt.

virtual ~ordered_message_processor();

Poznámky

Před zničením procesoru čeká na všechny nevyřízené asynchronní operace.

process_incoming_message

Funkce zpracování, která se nazývá asynchronně. Odklikuje zprávy a začne je zpracovávat.

virtual void process_incoming_message();

sync_send

Synchronně zařadí zprávy do fronty a spustí úlohu zpracování, pokud jste to ještě neudělali.

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

Parametry

_Msg
Ukazatel na zprávu.

wait

Číselník specifický pro procesor použitý v destruktory bloků zpráv, aby se zajistilo, že všechny úlohy asynchronního zpracování mají čas dokončit před zničením bloku.

virtual void wait();

Viz také

concurrency – obor názvů