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.
As seguintes enumerações estão disponíveis no namespace:
agent_status Enumeração
Os estados válidos para um .
enum agent_status;
Valores
| Nome | Descrição |
|---|---|
agent_canceled |
O foi cancelado. |
agent_created |
O foi criado, porém ainda não foi iniciado. |
agent_done |
O foi concluído sem ser cancelado. |
agent_runnable |
O foi iniciado, mas não inseriu seu método . |
agent_started |
O foi iniciado. |
Comentários
Para saber mais, confira Agentes assíncronos.
Requisitos
Cabeçalho: concrt.h
Enumeração Agents_EventType
Os tipos de eventos que podem ser rastreados usando a funcionalidade de rastreamento oferecida pela Biblioteca de Agentes
enum Agents_EventType;
Valores
| Nome | Descrição |
|---|---|
AGENTS_EVENT_CREATE |
Um tipo de evento que representa a criação de um objeto |
AGENTS_EVENT_DESTROY |
Um tipo de evento que representa a exclusão de um objeto |
AGENTS_EVENT_END |
Um tipo de evento que representa a conclusão de algum processamento |
AGENTS_EVENT_LINK |
Um tipo de evento que representa a vinculação de blocos de mensagens |
AGENTS_EVENT_NAME |
Um tipo de evento que representa o nome de um objeto |
AGENTS_EVENT_SCHEDULE |
Um tipo de evento que representa o agendamento de um processo |
AGENTS_EVENT_START |
Um tipo de evento que representa o início de algum processamento |
AGENTS_EVENT_UNLINK |
Um tipo de evento que representa a desvinculação de blocos de mensagens |
Requisitos
Cabeçalho: concrt.h
ConcRT_EventType Enumeração
Os tipos de eventos que podem ser rastreados usando a funcionalidade de rastreamento oferecida pelo Runtime de Simultaneidade.
enum ConcRT_EventType;
Valores
| Nome | Descrição |
|---|---|
CONCRT_EVENT_ATTACH |
Um tipo de evento que representa o ato de anexar a um agendador. |
CONCRT_EVENT_BLOCK |
Um tipo de evento que representa o ato de um bloqueio de contexto. |
CONCRT_EVENT_DETACH |
Um tipo de evento que representa o ato de uma desacoplagem de um agendador. |
CONCRT_EVENT_END |
Um tipo de evento que marca o início de um par de eventos de início/fim. |
CONCRT_EVENT_GENERIC |
Um tipo de evento usado para eventos diversos. |
CONCRT_EVENT_IDLE |
Um tipo de evento que representa o ato de um contexto ficar ocioso. |
CONCRT_EVENT_START |
Um tipo de evento que marca o início de um par de eventos de início/fim. |
CONCRT_EVENT_UNBLOCK |
Um tipo de evento que representa o ato de desbloquear um contexto. |
CONCRT_EVENT_YIELD |
Um tipo de evento que representa o ato de uma cedência de contexto. |
Requisitos
Cabeçalho: concrt.h Namespace: simultaneidade
Concrt_TraceFlags Enumeração
Sinalizadores de rastreamento para os tipos de evento
enum Concrt_TraceFlags;
Valores
| Nome | Descrição |
|---|---|
AgentEventFlag |
|
AllEventsFlag |
|
ContextEventFlag |
|
PPLEventFlag |
|
ResourceManagerEventFlag |
|
SchedulerEventFlag |
|
VirtualProcessorEventFlag |
Requisitos
Cabeçalho: concrt.h
Enumeração CriticalRegionType
O tipo de região crítica em que um contexto está.
enum CriticalRegionType;
Valores
| Nome | Descrição |
|---|---|
InsideCriticalRegion |
Indica que o contexto está dentro de uma região crítica. Quando dentro de uma região crítica, as suspensões assíncronas ficam ocultas do agendador. Se tal suspensão acontecer, o Resource Manager aguardará que o thread se torne executável e simplesmente o retome em vez de invocar o agendador novamente. Todos os bloqueios feitos dentro dessa região devem ser tomados com extremo cuidado. |
InsideHyperCriticalRegion |
Indica que o contexto está dentro de uma região hipercrítica. Quando dentro de uma região hipercrítica, as suspensões síncronas e assíncronas ficam ocultas do agendador. Caso essa suspensão ou bloqueio aconteça, o gerenciador de recursos aguardará que o thread se torne executável e simplesmente o retomará em vez de invocar o agendador novamente. Os bloqueios feitos dentro dessa região nunca devem ser compartilhados com o código em execução fora dessa mesma região. Isso causará um deadlock imprevisível. |
OutsideCriticalRegion |
Indica que o contexto está fora de qualquer região crítica. |
Requisitos
Cabeçalho: concrtrm.h
Enumeração DynamicProgressFeedbackType
Usado pela política para descrever se os recursos do agendador serão rebalanceados de acordo com as informações estatísticas coletadas do agendador ou apenas com base em processadores virtuais que entram e saem do estado ocioso por meio de chamadas aos métodos e na interface. Para mais informações sobre políticas de agendador disponíveis, confira PolicyElementKey.
enum DynamicProgressFeedbackType;
Valores
| Nome | Descrição |
|---|---|
ProgressFeedbackDisabled |
O agendador não coleta informações de progresso. O rebalanceamento é feito com base apenas no nível de assinatura do thread de hardware subjacente. Para obter mais informações sobre os níveis de assinatura, consulte IExecutionResource::CurrentSubscriptionLevel. Esse valor é reservado para uso pelo runtime. |
ProgressFeedbackEnabled |
O agendador coleta informações de progresso e as passa para o gerenciador de recursos. O gerenciador de recursos usará essas informações estatísticas para reequilibrar os recursos em nome do agendador, além do nível de assinatura associado ao thread de hardware subjacente. Para obter mais informações sobre os níveis de assinatura, consulte IExecutionResource::CurrentSubscriptionLevel. |
join_type Enumeração
O tipo de um bloco de mensagens .
enum join_type;
Valores
| Nome | Descrição |
|---|---|
greedy |
Blocos de mensagens greedy aceitam imediatamente uma mensagem após a propagação. Isso é mais eficiente, mas tem a possibilidade de bloqueio dinâmico, dependendo da configuração de rede. |
non_greedy |
Blocos de mensagens não gananciosos adiam mensagens e tentam consumi-las depois que todos tiverem chegado. É garantido que eles funcionarão, porém, mais devagar. |
Requisitos
Cabeçalho: agents.h
message_status Enumeração
As respostas válidas para uma oferta de um objeto para um bloco.
enum message_status;
Valores
| Nome | Descrição |
|---|---|
accepted |
O destinatário aceitou a mensagem. |
declined |
O destino não aceitou a mensagem. |
missed |
O alvo tentou aceitar a mensagem, mas a mensagem não estava mais disponível. |
postponed |
O alvo adiou a mensagem. |
Requisitos
Cabeçalho: agents.h
Enumeração PolicyElementKey
Chaves de política que descrevem aspectos do comportamento do agendador. Cada elemento de política é descrito por um par chave-valor. Para mais informações sobre as políticas do agendador e seu impacto sobre os agendadores, confira Agendador de Tarefas.
enum PolicyElementKey;
Valores
| Nome | Descrição |
|---|---|
ContextPriority |
A prioridade de threads de sistema operacional de cada contexto no agendador. Se essa chave for definida como o valor , os contextos no agendador herdarão a prioridade do thread que criou o agendador. Valores válidos: qualquer um dos valores válidos para a função Windows SetThreadPriority e o valor especial INHERIT_THREAD_PRIORITYValor padrão: |
ContextStackSize |
O tamanho da pilha reservada de cada contexto no agendador em quilobytes. Valores válidos: inteiros positivos Valor padrão: , indicando que o valor padrão do processo para o tamanho da pilha será usado. |
DynamicProgressFeedback |
Determina se os recursos do agendador serão rebalanceados de acordo com as informações estatísticas coletadas do agendador ou apenas com base no nível de assinatura de threads de hardware subjacentes. Para mais informações, confira DynamicProgressFeedbackType. Valores válidos: um membro da enumeração , ou Valor padrão: |
LocalContextCacheSize |
Quando a chave de política é definida para o valor , isso especifica o número máximo de contextos executáveis que podem ser enfileirados em cache nas filas locais de cada processador virtual. Esses contextos normalmente são executados na ordem LIFO (último a entrar, primeiro a sair) no processador virtual que faz com que eles se executem. Observe que essa chave de política não tem significado quando a chave é definida como o valor . Valores válidos: inteiros não negativos Valor padrão: |
MaxConcurrency |
O nível máximo de simultaneidade desejado pelo agendador. O gerenciador de recursos tentará alocar inicialmente muitos processadores virtuais. O valor especial MaxExecutionResources indica que o nível de simultaneidade desejado é o mesmo que o número de threads de hardware no computador. Se o valor especificado para for maior que o número de threads de hardware na máquina e for especificado como , o valor para será aumentado para corresponder ao valor definido para . Valores válidos: inteiros positivos e o valor especial Valor padrão: |
MaxPolicyElementKey |
A chave máxima do elemento de política. Não é uma chave de elemento válida. |
MinConcurrency |
O nível mínimo de simultaneidade que deve ser fornecido ao agendador pelo gerenciador de recursos. O número de processadores virtuais atribuídos a um agendador nunca ficará abaixo do mínimo. O valor especial MaxExecutionResources indica que o nível de simultaneidade mínimo é o mesmo que o número de threads de hardware no computador. Se o valor especificado para for menor que o número de threads de hardware no computador e for especificado como , o valor para será reduzido para coincidir com o que está definido para . Valores válidos: inteiros não negativos e o valor especial . Note que, para políticas de agendamento usadas na construção de agendadores do Concurrency Runtime, o valor é inválido. Valor padrão: |
SchedulerKind |
O tipo de threads que o agendador utilizará nos contextos subjacentes de execução. Para mais informações, confira SchedulerType. Valores válidos: um membro da enumeração , por exemplo, Valor padrão: . Isso se traduz em threads Win32 em qualquer sistema operacional. |
SchedulingProtocol |
Descreve qual algoritmo de agendamento será usado pelo agendador. Para obter mais informações, confira SchedulingProtocolType. Valores válidos: um membro da enumeração , ou Valor padrão: |
TargetOversubscriptionFactor |
Número provisório de processadores virtuais por thread de hardware. O fator de sobrescrição de destino pode ser aumentado pelo Gerenciador de Recursos, se necessário, para atender MaxConcurrency usando os threads de hardware no computador.Valores válidos: inteiros positivos Valor padrão: |
WinRTInitialization |
Requisitos
Cabeçalho: concrt.h
Enumeração de SchedulerType
Usado pela política para descrever o tipo de threads que o agendador deve utilizar para contextos subjacentes de execução. Para mais informações sobre políticas de agendador disponíveis, confira PolicyElementKey.
enum SchedulerType;
Valores
| Nome | Descrição |
|---|---|
ThreadScheduler |
Indica uma solicitação explícita de threads Win32 regulares. |
UmsThreadDefault |
Não há suporte para threads agendáveis no modo de usuário (UMS) no Ambiente de Execução de Concorrência no Visual Studio 2013. Usar como um valor para a política não resultará em um erro. No entanto, um agendador criado com essa política usará por padrão threads Win32. |
Requisitos
Cabeçalho: concrt.h
Enumeração SchedulingProtocolType
Usado pela política para descrever qual algoritmo de agendamento será utilizado para o agendador. Para mais informações sobre políticas de agendador disponíveis, confira PolicyElementKey.
enum SchedulingProtocolType;
Valores
| Nome | Descrição |
|---|---|
EnhanceForwardProgress |
O agendador prefere o round-robin entre os grupos de agendamento após a execução de cada uma das tarefas. Contextos desbloqueados normalmente são agendados em uma ordem de processamento FIFO (primeiro a entrar, primeiro a sair). Os processadores virtuais não armazenam em cache contextos desbloqueados. |
EnhanceScheduleGroupLocality |
O agendador prefere continuar a trabalhar em tarefas dentro do grupo agendado atual antes de migrar para outro grupo agendado. Contextos desbloqueados são armazenados em cache por processador virtual e normalmente são agendados de modo LIFO (Last In, First Out) pelo processador virtual que os desbloqueou. |
Requisitos
Cabeçalho: concrt.h
Enumeração SwitchingProxyState
Usado para indicar o estado em que um proxy de thread está ao executar uma troca de contexto cooperativa para outro proxy de thread.
enum SwitchingProxyState;
Valores
| Nome | Descrição |
|---|---|
Blocking |
Indica que o thread de chamada está bloqueando cooperativamente e deve ser de propriedade exclusiva do chamador até nova execução posterior e realização de outra ação. |
Idle |
Indica que o thread de chamada não é mais necessário para o agendador e está sendo retornado para o Resource Manager. O contexto que foi enviado não está mais acessível pelo Resource Manager. |
Nesting |
Indica que o thread de chamada está aninhando um agendador filho e o chamador precisa dele para anexar a um agendador diferente. |
Comentários
Um parâmetro do tipo SwitchingProxyState é passado para o método IThreadProxy::SwitchTo para instruir o Resource Manager como tratar o proxy de thread que está fazendo a chamada.
Para mais informações sobre como esse tipo é usado, confira IThreadProxy::SwitchTo.
task_group_status Enumeração
Descreve o status de execução de um objeto ou . Um valor desse tipo é retornado por vários métodos que aguardam a conclusão de tarefas agendadas para um grupo de tarefas.
enum task_group_status;
Valores
| Nome | Descrição |
|---|---|
canceled |
O objeto ou foi cancelado. Uma ou mais tarefas podem não ter sido executadas. |
completed |
As tarefas enfileiradas no objeto ou foram concluídas com êxito. |
not_complete |
As tarefas enfileiradas no objeto não foram concluídas. Observe que esse valor não é retornado atualmente pelo Runtime de Simultaneidade. |
Requisitos
Cabeçalho: pplinterface.h
Enumeração WinRTInitializationType
Usado pela política WinRTInitialization para descrever se e como o Windows Runtime será inicializado em threads de agendador para um aplicativo executado em sistemas operacionais com versão Windows 8 ou superior. Para mais informações sobre políticas de agendador disponíveis, confira PolicyElementKey.
enum WinRTInitializationType;
Valores
| Nome | Descrição |
|---|---|
DoNotInitializeWinRT |
Quando o aplicativo é executado em sistemas operacionais com versão Windows 8 ou superior, os threads dentro do agendador não inicializarão o Windows Runtime. |
InitializeWinRTAsMTA |
Quando o aplicativo é executado em sistemas operacionais com versão Windows 8 ou superior, cada thread dentro do agendador inicializará o Windows Runtime e declarará que ele faz parte do apartamento multithreaded. |
Requisitos
Cabeçalho: concrt.h
Confira também
Namespace de concorrência