Estrutura IUMSCompletionList
Representa um item da lista de conclusão UMS. Quando um thread UMS é bloqueado, o contexto de agendamento designado pelo agendador é enviado para tomar uma decisão do que agendar na raiz do processador virtual subjacente enquanto o thread original é bloqueado. Quando o thread original é desbloqueado, o sistema operacional o enfileira na lista de conclusão que é acessível por meio dessa interface. O agendador pode consultar a lista de conclusão no contexto de agendamento designado ou em qualquer outro local em que pesquisa para trabalho.
Sintaxe
struct IUMSCompletionList;
Membros
Métodos públicos
Nome | Descrição |
---|---|
IUMSCompletionList::GetUnblockNotifications | Recupera uma cadeia de interfaces IUMSUnblockNotification que representa contextos de execução cujos proxies de thread associados foram desbloqueados desde a última vez em que esse método foi invocado. |
Comentários
Um agendador deve ser extraordinariamente cuidadoso sobre quais ações são executadas depois de utilizar essa interface para remover itens da lista de conclusão. Os itens devem ser colocados na lista de contextos executáveis do agendador e estar geralmente acessíveis o mais rápido possível. É inteiramente possível que um dos itens removidos da fila tenha sido propriedade de um bloqueio arbitrário. O agendador não pode fazer chamadas de função arbitrárias que possam bloquear entre a chamada para remover itens da fila e o posicionamento desses itens em uma lista que geralmente pode ser acessada de dentro do agendador.
Hierarquia de herança
IUMSCompletionList
Requisitos
Cabeçalho: concrtrm.h
Namespace: concurrency
Método IUMSCompletionList::GetUnblockNotifications
Recupera uma cadeia de interfaces IUMSUnblockNotification
que representa contextos de execução cujos proxies de thread associados foram desbloqueados desde a última vez em que esse método foi invocado.
virtual IUMSUnblockNotification *GetUnblockNotifications() = 0;
Valor de retorno
Uma cadeia de interfaces IUMSUnblockNotification
.
Comentários
As notificações retornadas se tornam inválidas quando os contextos de execução são reagendados.
Confira também
Namespace de simultaneidade
Estrutura IUMSScheduler
Estrutura IUMSUnblockNotification