Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Define o objeto de espera, substituindo o objeto de espera anterior, se houver. Um thread de trabalho chama a função de retorno de chamada do objeto de espera depois que o identificador é sinalizado ou após o tempo limite especificado expirar.
Sintaxe
BOOL SetThreadpoolWaitEx(
[in, out] PTP_WAIT pwa,
[in, optional] HANDLE h,
[in, optional] PFILETIME pftTimeout,
PVOID Reserved
);
Parâmetros
[in, out] pwa
Um ponteiro para uma estrutura de TP_WAIT que define o objeto de espera. A função CreateThreadpoolWait retorna esse ponteiro.
[in, optional] h
Um identificador.
Se esse parâmetro for NULL, o objeto de espera deixará de enfileirar novos retornos de chamada (mas os retornos de chamada já enfileirados ainda ocorrerão).
Se esse parâmetro não for NULL, ele deverá se referir a um objeto de espera válido.
Se esse identificador estiver fechado enquanto a espera ainda estiver pendente, o comportamento da função será indefinido. Se a espera ainda estiver pendente e o identificador precisar ser fechado, use CloseThreadpoolWait para cancelar a espera e, em seguida, feche o identificador.
A espera será considerada definida se esse parâmetro não for NULL.
[in, optional] pftTimeout
Um ponteiro para uma estrutura FILETIME que especifica o tempo absoluto ou relativo em que a operação de espera deve acabar. Se esse parâmetro apontar para um valor positivo, ele indicará o tempo absoluto desde 1º de janeiro de 1601 (UTC), em intervalos de 100 nanossegundos. Se esse parâmetro apontar para um valor negativo, ele indicará a quantidade de tempo para aguardar em relação à hora atual. Se esse parâmetro apontar para zero, a espera atingirá o tempo limite imediatamente. Para obter mais informações sobre valores de tempo, consulte Os Tempos de Arquivo.
Se esse parâmetro for NULL, a espera não atingiu o tempo limite.
Reserved
Reservado. Deve ser NULL.
Valor de retorno
Retorna TRUE se a espera foi definida anteriormente e foi cancelada. Caso contrário, retornará FALSE.
Se o estado anterior da espera foi "definido" e a função retorna FALSE, um retorno de chamada está em andamento ou prestes a começar. Consulte as observações para mais discussões.
Observações
Um objeto de espera pode aguardar apenas um identificador. Definir o identificador de um objeto de espera substitui o identificador de espera anterior, se houver.
Em alguns casos, as funções de retorno de chamada podem ser executadas depois que um aplicativo fecha o temporizador do threadpool. Para evitar esse comportamento, um aplicativo deve seguir as etapas descritas em CloseThreadpoolWait.
Se o tempo limite especificado por pftTimeout for relativo, o tempo gasto pelo sistema em suspensão ou hibernação não contará para a expiração da espera. A espera é sinalizada quando a quantidade cumulativa de tempo decorrido que o sistema passa no estado de vigília é igual ao tempo limite relativo da espera. Se o tempo limite especificado por pftTimeout for absoluto, o tempo que o sistema gasta em suspensão ou hibernação conta para a expiração da espera. Se a espera expirar enquanto o sistema estiver em suspensão, a espera será sinalizada imediatamente quando o sistema é ativado.
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo suportado | Windows 8 [aplicativos da área de trabalho | Aplicativos UWP] |
| Servidor mínimo compatível | Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP] |
| da Plataforma de Destino |
Windows |
| Header | threadpoolapiset.h |
| Library | Kernel32.lib |
| de DLL |
Kernel32.dll |