Compartilhar via


Função CreateUmsCompletionList (winbase.h)

Cria uma lista de conclusão de UMS (agendamento no modo de usuário).

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 CreateUmsCompletionList(
  [out] PUMS_COMPLETION_LIST *UmsCompletionList
);

Parâmetros

[out] UmsCompletionList

Uma variável PUMS_COMPLETION_LIST . Na saída, esse parâmetro recebe um ponteiro para uma lista de conclusão de UMS vazia.

Valor retornado

Se a função for bem-sucedida, ela retornará um valor diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. Os valores de erro possíveis incluem o seguinte.

Código de retorno Descrição
ERROR_NOT_ENOUGH_MEMORY
Não há memória suficiente disponível para criar a lista de conclusão.
ERROR_NOT_SUPPORTED
Não há suporte para UMS.

Comentários

Uma lista de conclusão é associada a um thread do agendador UMS quando a função EnterUmsSchedulingMode é chamada para criar o thread do agendador. O sistema enfileira threads de trabalho ums recém-criados para a lista de conclusão. Ele também enfileira threads de trabalho ums bloqueados anteriormente para a lista de conclusão quando os threads não estão mais bloqueados.

Quando a função de ponto de entrada UmsSchedulerProc de um aplicativo é chamada, o agendador do aplicativo deve recuperar itens da lista de conclusão chamando DequeueUmsCompletionListItems.

Cada lista de conclusão tem um evento de lista de conclusão associado que é sinalizado sempre que o sistema enfileira itens em uma lista vazia. Use GetUmsCompletionListEvent para obter um identificador para o evento para uma lista de conclusão especificada.

Quando uma lista de conclusão não for mais necessária, use DeleteUmsCompletionList para liberar a lista. A lista deve estar vazia antes de ser lançada.

Requisitos

   
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)

Confira também

DequeueUmsCompletionListItems

EnterUmsSchedulingMode

GetUmsCompletionListEvent