Fungsi RpcCancelThread (rpcdce.h)

Fungsi RpcCancelThread membatalkan utas. Fungsi RpcCancelThread tidak boleh digunakan untuk membatalkan panggilan RPC asinkron; sebagai gantinya, gunakan fungsi RpcAsyncCancelCall untuk membatalkan panggilan RPC asinkron.

Sintaks

RPC_STATUS RpcCancelThread(
  void *Thread
);

Parameter

Thread

Tangani utas untuk dibatalkan.

Menampilkan nilai

Nilai Makna
RPC_S_OK
Panggilan berhasil.
RPC_S_ACCESS_DENIED
Handel utas tidak memiliki hak istimewa. Handel utas harus memiliki THREAD_SET_CONTEXT diatur dengan benar agar fungsi dapat dijalankan dengan benar.
RPC_S_CANNOT_SUPPORT
Dipanggil oleh klien MS-DOS atau Windows 3.x.
 
Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Fungsi RpcCancelThread memungkinkan satu utas klien untuk membatalkan RPC yang sedang berlangsung pada utas klien lain. Ketika fungsi dipanggil, run-time server diberitahu tentang operasi pembatalan. Stub server dapat menentukan apakah panggilan telah dibatalkan dengan memanggil RpcTestCancel. Jika panggilan telah dibatalkan, stub server harus membersihkan dan mengembalikan kontrol ke klien.

Fungsi RpcCancelThread tidak dapat digunakan untuk membatalkan panggilan yang telah mengeluarkan panggilan balik statis. Jangan batalkan panggilan prosedur jarak jauh yang dapat memanggil fungsi yang dideklarasikan dengan atribut [callback] dalam IDL-file.

Secara default, klien menunggu selamanya bagi server untuk mengembalikan kontrol setelah pembatalan. Untuk mengurangi waktu ini, panggil RpcMgmtSetCancelTimeout, menentukan jumlah detik untuk menunggu respons. Jika server tidak kembali dalam interval ini, panggilan gagal di klien dengan pengecualian RPC_S_CALL_FAILED . Stub server terus berjalan.

Jika Anda menggunakan protokol pipa bernama, ncacn_np, Anda harus menentukan batas waktu terbatas.

Anda dapat menggunakan RpcCancelThread dengan salah satu protokol berorientasi koneksi (ncacn_*) dan dengan salah satu protokol datagram kecuali ncadg_mq dan ncalrpc.

Catatan Windows XP/2000 Fungsi RpcCancelThread tidak tersedia untuk ncacn_http. Fungsi RpcCancelThread mendukung ncacn_http pada sistem operasi Windows Server 2003 atau yang lebih baru dan Windows XP dengan Paket Layanan 1 (SP1) dan yang lebih baru.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header rpcdce.h (termasuk Rpc.h)
Pustaka Rpcrt4.lib
DLL Rpcrt4.dll

Lihat juga

RpcTestCancel

ncacn_http

ncadg_mq

ncalrpc