Bagikan melalui


Fungsi RpcCancelThreadEx (rpcdce.h)

Fungsi RpcCancelThreadEx menghentikan eksekusi utas. Fungsi RpcCancelThreadEx tidak boleh digunakan untuk menghentikan eksekusi panggilan RPC asinkron; sebagai gantinya, gunakan fungsi RpcAsyncCancelCall untuk menghentikan eksekusi panggilan RPC asinkron.

Sintaks

RPC_STATUS RpcCancelThreadEx(
  void *Thread,
  long Timeout
);

Parameter

Thread

Tangani utas untuk dibatalkan.

Timeout

Jumlah detik untuk menunggu utas dibatalkan sebelum fungsi ini kembali. Untuk menentukan bahwa klien menunggu waktu yang tidak terbatas, berikan nilai RPC_C_CANCEL_INFINITE_TIMEOUT.

Nilai kembali

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 MS-DOS atau Windows 3. klien x .
 
Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Fungsi RpcCancelThreadEx 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.

Dengan menggunakan parameter Batas Waktu , aplikasi Anda dapat menentukan jumlah detik untuk menunggu respons. Jika server tidak kembali dalam interval ini, panggilan gagal di klien dengan pengecualian RPC_S_CALL_CANCELLED. Stub server terus dijalankan.

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

Catatan Anda dapat menggunakan RpcCancelThreadEx dengan salah satu protokol berorientasi koneksi (ncacn_*) kecuali ncacn_http, dan dengan salah satu protokol datagram kecuali ncadg_mq dan ncalrpc.
 

Persyaratan

Persyaratan Nilai
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

RpcAsyncCancelCallRpcCancelThreadRpcTestCancelncacn_httpncacn_npncadg_mqncalrpc