Funzione SetThreadpoolWait (threadpoolapiset.h)

Imposta l'oggetto wait, sostituendo l'oggetto wait precedente, se presente. Un thread di lavoro chiama la funzione di callback dell'oggetto wait dopo che l'handle viene segnalato o dopo la scadenza del timeout specificato.

Sintassi

void SetThreadpoolWait(
  [in, out]      PTP_WAIT  pwa,
  [in, optional] HANDLE    h,
  [in, optional] PFILETIME pftTimeout
);

Parametri

[in, out] pwa

Puntatore a una struttura TP_WAIT che definisce l'oggetto wait. La funzione CreateThreadpoolWait restituisce questo puntatore.

[in, optional] h

Handle.

Se questo parametro è NULL, l'oggetto wait smetterà di accodare nuovi callback (ma i callback già accodati si verificheranno ancora).

Se questo parametro non è NULL, deve fare riferimento a un oggetto waitable valido.

Se questo handle viene chiuso mentre l'attesa è ancora in sospeso, il comportamento della funzione non è definito. Se l'attesa è ancora in sospeso e l'handle deve essere chiuso, usare CloseThreadpoolWait per annullare l'attesa e quindi chiudere l'handle.

L'attesa viene considerata impostata se questo parametro non è NULL.

[in, optional] pftTimeout

Puntatore a una struttura FILETIME che specifica il tempo assoluto o relativo in cui l'operazione di attesa deve essere timeout. Se questo parametro punta a un valore positivo, indica l'ora assoluta dal 1° gennaio 1601 (UTC), in intervalli di 100 nanosecondi. Se questo parametro punta a un valore negativo, indica la quantità di tempo di attesa rispetto all'ora corrente. Per altre informazioni sui valori temporali, vedere Tempi file.

Se questo parametro punta a 0, il timeout di attesa viene eseguito immediatamente. Se questo parametro è NULL, l'attesa non verrà timeout.

Valore restituito

nessuno

Osservazioni

Un oggetto wait può attendere un solo handle. Se si imposta l'handle per un oggetto wait, viene sostituito l'handle precedente, se presente.

È necessario registrare nuovamente l'evento con l'oggetto wait prima di segnalarlo ogni volta per attivare il callback di attesa.

Per compilare un'applicazione che usa questa funzione, definire _WIN32_WINNT come 0x0600 o versione successiva.

Esempio

Per un esempio, vedere Uso delle funzioni del pool di thread.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione threadpoolapiset.h (includere Windows.h in Windows 7, Windows Server 2008 Windows Server 2008 R2)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

CloseThreadpoolWait

CreateThreadpoolWait

SetThreadpoolWaitEx

Pool di thread

WaitForThreadpoolWaitCallbacks