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.
MIP SDK hampir sepenuhnya asinkron. Misalnya, SDK melakukan operasi apa pun yang menghasilkan I/O jaringan atau file secara asinkron. Untuk menangani pemberitahuan peristiwa untuk peristiwa asinkron ini, SDK menggunakan pola pengamat.
Gambaran umum implementasi
Saat Anda membuat objek yang melakukan operasi asinkron, terapkan Observer kelas. Pengamat menerima peristiwa pemberitahuan yang terkait dengan berbagai operasi asinkron di MIP SDK dan memberikan hasilnya kepada pemanggil.
Anda dapat mengambil alih fungsi virtual di setiap Observer kelas untuk pola asinkron pilihan. SDK mengimplementasikan pola pengamat pemberitahuan peristiwa dengan menggunakan std::promise dan std::future.
Setiap observer khusus untuk setiap kelas berisi serangkaian fungsi penanganan keberhasilan dan kesalahan/kegagalan untuk menangani hasil operasi asinkron. Fungsi keberhasilan mengembalikan objek yang terkait dengan operasi. Kesalahan/Fungsi kegagalan mengembalikan pengecualian yang berisi detail tentang mengapa operasi tidak berhasil.
Misalnya, FileProfile mendukung dua operasi berikut:
- Ini dapat menambahkan mesin baru ke profil dengan menggunakan
FileProfile::AddEngineAsync. - Ini dapat membongkar mesin dari profil dengan menggunakan
FileProfile::UnloadEngineAsync.
Karena SDK mengimplementasikan dua Observer fungsi per operasi asinkron, Anda dapat mengasumsikan bahwa empatObserver metode dikaitkan dengan FileProfile:
FileProfileObserver::OnAddEngineSuccess()FileProfileObserver::OnAddEngineError()FileProfileObserver::OnUnloadEngineSuccessFileProfileObserver::OnUnloadEngineError()
Kelas pengamat MIP SDK
SDK File MIP berisi dua pengamat:
mip::FileProfile::Observermip::FileHandler::Observer
SDK Kebijakan MIP memiliki satu pengamat:
mip::Profile::Observer
SDK Perlindungan MIP memiliki tiga pengamat:
mip::ProtectionProfile::Observermip::ProtectionEngine::Observermip::ProtectionHandler::Observer
Langkah berikutnya
Pelajari selengkapnya tentang cara berbagai SDK menerapkan dan menggunakan pengamat: