Compartilhar via


Função CreateThreadpoolWait (threadpoolapiset.h)

Cria um novo objeto de espera.

Sintaxe

PTP_WAIT CreateThreadpoolWait(
  [in]                PTP_WAIT_CALLBACK    pfnwa,
  [in, out, optional] PVOID                pv,
  [in, optional]      PTP_CALLBACK_ENVIRON pcbe
);

Parâmetros

[in] pfnwa

A função de retorno de chamada a ser chamada quando a espera for concluída ou atingir o tempo limite. Para obter detalhes, consulte WaitCallback.

[in, out, optional] pv

Dados opcionais definidos pelo aplicativo a serem passados para a função de retorno de chamada.

[in, optional] pcbe

Uma estrutura TP_CALLBACK_ENVIRON que define o ambiente no qual executar o retorno de chamada. A função InitializeThreadpoolEnvironment retorna essa estrutura.

Se esse parâmetro for NULL, o retorno de chamada será executado no ambiente de retorno de chamada padrão. Para obter mais informações, consulte InitializeThreadpoolEnvironment.

Valor retornado

Se a função for bem-sucedida, ela retornará um ponteiro para uma estrutura TP_WAIT que define o objeto de espera. Os aplicativos não modificam os membros dessa estrutura.

Se a função falhar, ela retornará NULL. Para recuperar informações de erro estendidas, chame GetLastError.

Comentários

Para definir o objeto de espera, chame a função SetThreadpoolWait ou SetThreadpoolWaitEx .

O item de trabalho e todas as funções que ele chama não devem depender do thread depois de terem retornado. Portanto, você não pode chamar uma chamada assíncrona que exija um thread persistente, como a função RegNotifyChangeKeyValue sem o sinalizador REG_NOTIFY_THREAD_AGNOSTIC , do ambiente de retorno de chamada padrão. Em vez disso, use um thread cujo tempo de vida você controla.

Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT como 0x0600 ou superior.

Exemplos

Para obter um exemplo, consulte Usando as funções do pool de threads.

Requisitos

   
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho threadpoolapiset.h (inclua Windows.h no Windows 7, Windows Server 2008 Windows Server 2008 R2)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

CloseThreadpoolWait

SetThreadpoolWait

Pools de threads

WaitForThreadpoolWaitCallbacks