Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
ordered_message_processor adalah yang message_processor memungkinkan blok pesan memproses pesan dalam urutan diterimanya.
Sintaks
template<class T>
class ordered_message_processor : public message_processor<T>;
Parameter
T
Jenis payload pesan yang ditangani oleh prosesor.
Anggota
Typedef Publik
| Nama | Deskripsi |
|---|---|
type |
Alias jenis untuk T. |
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| ordered_message_processor | Membuat ordered_message_processor objek. |
| ~ordered_message_processor Destructor | ordered_message_processor Menghancurkan objek. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| async_send | Secara asinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan. (Mengambil alih message_processor::async_send.) |
| Menginisialisasi | Menginisialisasi ordered_message_processor objek dengan fungsi panggilan balik, penjadwal, dan grup jadwal yang sesuai. |
| initialize_batched_processing | Menginisialisasi pemrosesan pesan batch |
| sync_send | Secara sinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan. (Mengambil alih message_processor::sync_send.) |
| Tunggu | Penantian putaran khusus prosesor yang digunakan dalam destruktor blok pesan untuk memastikan bahwa semua tugas pemrosesan asinkron memiliki waktu untuk menyelesaikan sebelum menghancurkan blok. (Mengambil alih message_processor::wait.) |
Metode yang Dilindungi
| Nama | Deskripsi |
|---|---|
| process_incoming_message | Fungsi pemrosesan yang disebut secara asinkron. Ini menghapus antrean pesan dan mulai memprosesnya. (Mengambil alih message_processor::p rocess_incoming_message.) |
Hierarki Warisan
ordered_message_processor
Persyaratan
Header: agents.h
Namespace: konkurensi
async_send
Secara asinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan.
virtual void async_send(_Inout_opt_ message<T>* _Msg);
Parameter
_Msg
Penunjuk ke pesan.
Menginisialisasi
Menginisialisasi ordered_message_processor objek dengan fungsi panggilan balik, penjadwal, dan grup jadwal yang sesuai.
void initialize(
_Inout_opt_ Scheduler* _PScheduler,
_Inout_opt_ ScheduleGroup* _PScheduleGroup,
_Handler_method const& _Handler);
Parameter
_PScheduler
Penunjuk ke penjadwal yang akan digunakan untuk menjadwalkan tugas ringan.
_PScheduleGroup
Penunjuk ke grup jadwal yang akan digunakan untuk menjadwalkan tugas ringan.
_Handler
Funktor handler dipanggil selama panggilan balik.
initialize_batched_processing
Menginisialisasi pemrosesan pesan batch
virtual void initialize_batched_processing(
_Handler_method const& _Processor,
_Propagator_method const& _Propagator);
Parameter
_Prosesor
Funktor prosesor dipanggil selama panggilan balik.
_Propagator
Funktor penyebar memanggil selama panggilan balik.
ordered_message_processor
Membuat ordered_message_processor objek.
ordered_message_processor();
Keterangan
Ini ordered_message_processor tidak akan menjadwalkan handler asinkron atau sinkron hingga initialize fungsi dipanggil.
~ordered_message_processor
ordered_message_processor Menghancurkan objek.
virtual ~ordered_message_processor();
Keterangan
Menunggu semua operasi asinkron yang luar biasa sebelum menghancurkan prosesor.
process_incoming_message
Fungsi pemrosesan yang disebut secara asinkron. Ini menghapus antrean pesan dan mulai memprosesnya.
virtual void process_incoming_message();
sync_send
Secara sinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan.
virtual void sync_send(_Inout_opt_ message<T>* _Msg);
Parameter
_Msg
Penunjuk ke pesan.
tunggu
Penantian putaran khusus prosesor yang digunakan dalam destruktor blok pesan untuk memastikan bahwa semua tugas pemrosesan asinkron memiliki waktu untuk menyelesaikan sebelum menghancurkan blok.
virtual void wait();