RpcCancelThreadEx 関数 (rpcdce.h)
RpcCancelThreadEx 関数は、スレッドの実行を停止します。 RpcCancelThreadEx 関数は、非同期 RPC 呼び出しの実行を停止するために使用しないでください。代わりに、RpcAsyncCancelCall 関数を使用して、非同期 RPC 呼び出しの実行を停止します。
構文
RPC_STATUS RpcCancelThreadEx(
void *Thread,
long Timeout
);
パラメーター
Thread
取り消すスレッドのハンドル。
Timeout
この関数が戻るまでスレッドが取り消されるまで待機する秒数。 クライアントが無期限の時間を待機するように指定するには、値をRPC_C_CANCEL_INFINITE_TIMEOUT渡します。
戻り値
値 | 意味 |
---|---|
|
呼び出しは成功しました。 |
|
スレッド ハンドルには特権がありません。 関数を正しく実行するには、スレッド ハンドルにTHREAD_SET_CONTEXTが正しく設定されている必要があります。 |
|
MS-DOS または Windows 3 によって呼び出されます。x クライアント。 |
注釈
RpcCancelThreadEx 関数を使用すると、あるクライアント スレッドが別のクライアント スレッドで進行中の RPC を取り消すことができます。 関数が呼び出されると、サーバーの実行時に取り消し操作が通知されます。 サーバー スタブは、 RpcTestCancel を呼び出すことによって呼び出しが取り消されたかどうかを判断できます。 呼び出しが取り消された場合、サーバー スタブはクリーンし、クライアントに制御を返す必要があります。
Timeout パラメーターを使用すると、アプリケーションで応答を待機する秒数を指定できます。 サーバーがこの期間内に戻らない場合、クライアントで呼び出しが失敗し、RPC_S_CALL_CANCELLED例外が発生します。 サーバー スタブは引き続き実行されます。
名前付きパイプ プロトコル ( ncacn_np) を使用している場合は、有限のタイムアウトを指定する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | rpcdce.h (Rpc.h を含む) |
Library | Rpcrt4.lib |
[DLL] | Rpcrt4.dll |
こちらもご覧ください
RpcAsyncCancelCallRpcCancelThreadRpcTestCancelncacn_httpncacn_npncadg_mqncalrpc