Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Executa o thread de trabalho ums especificado.
Aviso
A partir de Windows 11, não há suporte para o agendamento no modo de usuário. Todas as chamadas falham com o erro ERROR_NOT_SUPPORTED.
Sintaxe
BOOL ExecuteUmsThread(
[in, out] PUMS_CONTEXT UmsThread
);
Parâmetros
[in, out] UmsThread
Um ponteiro para o contexto de thread UMS do thread de trabalho a ser executado.
Retornar valor
Se a função for bem-sucedida, ela não retornará um valor.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. Os códigos de erro possíveis incluem o seguinte.
| Código de retorno | Descrição |
|---|---|
|
O thread de trabalho ums especificado é temporariamente bloqueado pelo sistema. O chamador pode repetir a operação. |
|
Não há suporte para UMS. |
Comentários
A função ExecuteUmsThread carrega o estado do thread de trabalho ums especificado sobre o estado do thread do agendador UMS de chamada para que o thread de trabalho possa ser executado. O thread de trabalho é executado até que ele produz chamando a função UmsThreadYield , blocos ou termina.
Quando um thread de trabalho produz ou bloqueia, o sistema chama a função de ponto de entrada UmsSchedulerProc do thread do agendador. Quando um thread de trabalho bloqueado anteriormente é desbloqueado, o sistema enfileira o thread de trabalho para a lista de conclusão especificada com a função UpdateProcThreadAttribute quando o thread de trabalho foi criado.
A função ExecuteUmsThread não retorna, a menos que ocorra um erro. Se a função retornar ERROR_RETRY, o erro será transitório e a operação poderá ser repetida.
Se a função retornar um erro diferente de ERROR_RETRY, o agendador do aplicativo deverá marcar se o thread está suspenso ou encerrado chamando QueryUmsThreadInformation com UmsThreadIsSuspended ou UmsThreadIsTerminated, respectivamente. Outros erros possíveis incluem chamar a função em um thread que não é um thread do agendador UMS, passar um contexto de thread de trabalho umS inválido ou especificar um thread de trabalho que já está sendo executado em outro thread do agendador.
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte | Windows 7 (somente 64 bits) [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
| Plataforma de Destino | Windows |
| Cabeçalho | winbase.h (inclua Windows.h) |
| Biblioteca | Kernel32.lib |
| DLL | Kernel32.dll |
| Conjunto de APIs | api-ms-win-core-ums-l1-1-0 (introduzido no Windows 7) |