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 message_processor yang memungkinkan blok pesan memproses pesan sesuai dengan urutan penerimaan.
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 |
|---|---|
| pengolah_pesan_terurut | Membuat objek ordered_message_processor. |
| ~ordered_message_processor Destruktor |
ordered_message_processor Menghancurkan objek. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| async_send | Secara asinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan. (Menggantikan message_processor::async_send.) |
| Menginisialisasi | Menginisialisasi ordered_message_processor objek dengan fungsi panggilan balik, penjadwal, dan grup jadwal yang sesuai. |
| menginisialisasi_pemrosesan_dikelompokkan | Menginisialisasi pemrosesan pesan batch |
| sync_send | Secara sinkron mengantre pesan dan memulai tugas pemrosesan, jika ini belum dilakukan. (Menggantikan 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. (Menimpa message_processor::process_incoming_message.) |
Hierarki Pewarisan
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.
awali
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 (inisialisasi pemrosesan berkelompok)
Menginisialisasi pemrosesan pesan batch
virtual void initialize_batched_processing(
_Handler_method const& _Processor,
_Propagator_method const& _Propagator);
Parameter
_Prosesor
Fungsi prosesor yang dipanggil selama panggilan balik.
_Propagator
Fungsi penghubung yang dipanggil selama panggilan balik.
Pengolah Pesan Terurut
Membuat objek ordered_message_processor.
ordered_message_processor();
Keterangan
Ini ordered_message_processor tidak akan menjadwalkan handler asinkron atau sinkron sampai fungsi initialize dipanggil.
~pemroses_pesan_terurut
ordered_message_processor Menghancurkan objek.
virtual ~ordered_message_processor();
Keterangan
Menunggu semua operasi asinkron yang belum selesai sebelum menghancurkan prosesor.
proses_pesan_masuk
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 (pointer) 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();