Funzione RpcCancelThreadEx (rpcdce.h)
La funzione RpcCancelThreadEx arresta l'esecuzione di un thread. La funzione RpcCancelThreadEx non deve essere usata per arrestare l'esecuzione di una chiamata RPC asincrona; usare invece la funzione RpcAsyncCancelCall per arrestare l'esecuzione di una chiamata RPC asincrona.
Sintassi
RPC_STATUS RpcCancelThreadEx(
void *Thread,
long Timeout
);
Parametri
Thread
Handle del thread da annullare.
Timeout
Numero di secondi per attendere che il thread venga annullato prima che questa funzione venga restituita. Per specificare che un client attende un periodo di tempo indefinito, passare il valore RPC_C_CANCEL_INFINITE_TIMEOUT.
Valore restituito
Valore | Significato |
---|---|
|
La chiamata ha avuto esito positivo. |
|
L'handle di thread non ha privilegi. Gli handle di thread devono avere THREAD_SET_CONTEXT impostato correttamente per la funzione da eseguire correttamente. |
|
Chiamato da MS-DOS o Windows 3. x client. |
Commenti
La funzione RpcCancelThreadEx consente a un thread client di annullare un rpc in corso in un altro thread client. Quando viene chiamata la funzione, il runtime del server viene informato dell'operazione di annullamento. Lo stub del server può determinare se la chiamata è stata annullata chiamando RpcTestCancel. Se la chiamata è stata annullata, lo stub del server deve pulire e restituire il controllo al client.
Usando il parametro Timeout , l'applicazione può specificare il numero di secondi per attendere una risposta. Se il server non restituisce entro questo intervallo, la chiamata ha esito negativo nel client con un'eccezione RPC_S_CALL_CANCELLED. Lo stub del server continua a essere eseguito.
Se si usa il protocollo named pipe, ncacn_np, è necessario specificare un timeout finito.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | rpcdce.h (include Rpc.h) |
Libreria | Rpcrt4.lib |
DLL | Rpcrt4.dll |
Vedi anche
RpcAsyncCancelCallRpcCancelThreadRpcTestCancelncacn_httpncacn_np ncadg_mqncalrpc