Pembatalan panggilan
Pemberitahuan pembatalan panggilan membatalkan pengoperasian operasi layanan sisi server dan panggilan balik model layanan. Pembatalan tersebut bisa karena salah satu dari dua alasan:
- Host layanan telah menghentikan operasi karena panggilan ke fungsi WsAbortServiceHost .
- Saluran yang mendasar telah menimbulkan kesalahan.
Untuk menerima pemberitahuan pembatalan, operasi layanan atau panggilan balik model layanan harus mendaftarkan panggilan balik WS_OPERATION_CANCEL_CALLBACK dengan memanggil fungsi WsRegisterOperationForCancel .
Secara opsional, sebagai bagian dari pendaftaran pemberitahuan pembatalan, operasi layanan atau panggilan balik model layanan juga dapat mendaftarkan data status khusus aplikasi dan panggilan balik WS_OPERATION_FREE_STATE_CALLBACK .
Data status tersedia untuk panggilan balik WS_OPERATION_CANCEL_CALLBACK . Setelah penyelesaian panggilan, panggilan balik WS_OPERATION_FREE_STATE_CALLBACK dipanggil untuk memberi aplikasi kesempatan untuk membebaskan data status.
Untuk contoh kode, lihat BlockingServiceExample.
Panggilan balik pembatalan hanya dipanggil sekali selama masa pakai operasi layanan sisi server atau fungsi panggilan balik.
Pembatalan panggilan tersedia untuk semua panggilan balik host layanan yang mengambil WS_OPERATION_CONTEXT sebagai parameter.
Elemen API berikut berkaitan dengan pembatalan panggilan.
Callback | Deskripsi |
---|---|
WS_OPERATION_CANCEL_CALLBACK | Dipanggil oleh model layanan untuk memberi tahu pembatalan operasi layanan asinkron sebagai akibat dari penonaktifan host layanan yang dibatalkan. |
WS_OPERATION_FREE_STATE_CALLBACK | Dipanggil oleh model layanan untuk memungkinkan aplikasi membersihkan data status yang terdaftar dengan panggilan balik pembatalan. |
Fungsi | Deskripsi |
---|---|
WsRegisterOperationForCancel | Memungkinkan operasi layanan atau panggilan balik model layanan untuk mendaftar pemberitahuan pembatalan. |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk