Compartilhar via


simultaneidade Namespace

O namespace de concurrency fornece as classes e funções que fornecem acesso ao tempo de execução de concorrência, uma estrutura de programação simultânea para C++.Para obter mais informações, consulte Tempo de execução de concorrência.

namespace concurrency;

Membros

Dd492819.collapse_all(pt-br,VS.110).gifTypedefs

Nome

Descrição

runtime_object_identity

Cada instância de mensagem tem uma identidade que o segue como é clonados e transmitido entre componentes de mensagem.Isso pode não ser o endereço do objeto de mensagem.

task_status

Um tipo que representa o estado de terminal uma tarefa.Os valores válidos são completed e canceled.

TaskProc

Uma abstração elementar para uma tarefa, definida como void (__cdecl * TaskProc)(void *).TaskProc é chamado para invocar o corpo de uma tarefa.

Dd492819.collapse_all(pt-br,VS.110).gifClasses

Nome

Descrição

affinity_partitioner classe

A classe de affinity_partitioner é semelhante à classe de static_partitioner , mas melhora afinidade do cache por sua escolha de subranges de mapeamento para segmentos de trabalho.Pode melhorar o desempenho significativamente quando um loop é executado no mesmo conjunto de dados, e os ajustes de dados no cache.Observe que o mesmo objeto de affinity_partitioner deve ser usado com iterações subseqüentes de um loop paralelo que é executado em um conjunto específico de dados, a vantagem de localidade de dados.

classe de agente

Uma classe pretendesse ser usada como classe base para todos os agentes independentes.É usada para ocultar o estado dos outros agentes e para interagir com mensagem- passar.

auto_partitioner classe

a classe de auto_partitioner representa o método padrão parallel_for, parallel_for_each e uso de parallel_transform dividir o intervalo que iteram sobre.Este método do intervalo de employes do particionamento que rouba para o balanceamento de carga bem como itera pelo botão.

classe de bad_target

Essa classe descreve uma exceção acionada quando um bloco de mensagem é dado um ponteiro para um destino que seja válido para a operação que está sendo executada.

chame a classe

Um bloco de mensagem de call é uma de origem, target_block ordenada que chama uma função especificada para receber uma mensagem.

cancellation_token classe

A classe de cancellation_token representa a capacidade para determinar se qualquer operação foi requisitada cancelar.

cancellation_token_registration classe

A classe de cancellation_token_registration representa uma notificação de retorno de chamada de cancellation_token.

cancellation_token_source classe

A classe de cancellation_token_source representa a capacidade para cancelar uma operação.

Classe de opção

Um bloco de mensagem de choice é uma de origem, o único bloco de destino que representa uma interação de fluxo de controle com um conjunto de fontes.O bloco choice esperará qualquer de várias fontes para gerar uma mensagem e propagará o índice de origem que gerou a mensagem.

classe combinável

O objeto de combinable<T> se destina a fornecer cópias de segmento particulares de dados, para executar cálculos subelemento bloqueio- livres do local com segmentos durante algoritmos paralelos.Em o final da operação paralela, as subpropriedades e cálculos com privadas podem ser mesclada em um resultado final.Essa classe pode ser usada em vez de uma variável compartilhada, e pode levar a uma melhoria de desempenho se haveria de outra maneira de conflito em que a variável compartilhada.

concurrent_priority_queue classe

A classe de concurrent_priority_queue é um contêiner que permitem que vários threads simultaneamente empurrem e apareçam itens.Os itens são aparecidos na ordem de prioridade onde a prioridade é determinada por um functor fornecido como um argumento de modelo.

concurrent_queue classe

A classe de concurrent_queue é uma classe recipiente de seqüência na qual permite locais, primeiro - out acesso a seus elementos.Permite que um conjunto limitado de operações simultaneidade- tipadas, como push e try_pop.

concurrent_unordered_map classe

A classe de concurrent_unordered_map é um contêiner simultaneidade- seguro controle que uma seqüência de variar- comprimento dos elementos de tipo std::pair<const _Key_type, _Element_type>.A seqüência é representada em uma forma que permite simultaneidade- seguro, acrescente acesso do elemento, acesso de iterador, e operações de percorrimento de iterador.

concurrent_unordered_multimap classe

A classe de concurrent_unordered_multimap é um contêiner simultaneidade- seguro controle que uma seqüência de variar- comprimento dos elementos de tipo std::pair<const _Key_type, _Element_type>.A seqüência é representada em uma forma que permite simultaneidade- seguro, acrescente acesso do elemento, acesso de iterador e operações de percorrimento de iterador.

concurrent_unordered_multiset classe

A classe de concurrent_unordered_multiset é um contêiner simultaneidade- seguro controle que uma seqüência de variar- comprimento dos elementos de _Key_type do tipo.A seqüência é representada em uma forma que permite simultaneidade- seguro, acrescente acesso do elemento, acesso de iterador e operações de percorrimento de iterador.

concurrent_unordered_set classe

A classe de concurrent_unordered_set é um contêiner simultaneidade- seguro controle que uma seqüência de variar- comprimento dos elementos de _Key_type do tipo.A seqüência é representada em uma forma que permite simultaneidade- seguro, acrescente acesso do elemento, acesso de iterador e operações de percorrimento de iterador.

concurrent_vector classe

A classe de concurrent_vector é uma classe recipiente que permite a seqüência de acesso aleatório a qualquer elemento.Permite que simultaneidade- seguro, acrescenta acesso do elemento, acesso de iterador, e operações de percorrimento de iterador.

Classe de contexto

Representa uma abstração para um contexto de execução.

classe de context_self_unblock

Essa classe descreve uma exceção lançada quando o método de Unblock de um objeto de Context é chamado do mesmo contexto.Isso indicaria uma tentativa de um determinado contexto de desbloquear-se.

classe context_unblock_unbalanced

Essa classe descreve uma exceção acionada quando as chamadas para métodos de Block e de Unblock de um objeto de Context não são combinados corretamente.

CRITICAL_SECTION classe

Um mutex reentrante que não está explicitamente ciente de tempo de execução de simultaneidade.

Classe de CurrentScheduler

Representa uma abstração para o agendador atual associado com o contexto de chamada.

classe de default_scheduler_exists

Essa classe descreve uma exceção lançada quando o método de Scheduler::SetDefaultSchedulerPolicy é chamado quando um agendador padrão já existe dentro do processo.

classe de evento (tempo de execução de simultaneidade)

Um evento manual de redefinir explicitamente que esteja ciente de tempo de execução de simultaneidade.

classe de improper_lock

Essa classe descreve uma exceção acionada quando um bloqueio é adquirido incorretamente.

classe de improper_scheduler_attach

Essa classe descreve uma exceção lançada quando o método de Attach é chamado um objeto de Scheduler que já esteja anexado ao contexto atual.

classe de improper_scheduler_detach

Essa classe descreve uma exceção lançada quando o método de CurrentScheduler::Detach for chamado em um contexto que não seja anexado a qualquer agendador que usa o método de Attach de um objeto de Scheduler .

classe de improper_scheduler_reference

Essa classe descreve uma exceção lançada quando o método de Reference é chamado um objeto de Scheduler que está fechando, um contexto que não é parte do agendador.

classe de invalid_link_target

Essa classe descreve uma exceção lançada quando o método de link_target de um bloco de mensagem é chamado e o bloco de mensagem é não é possível vincular ao destino.Isso pode ser o resultado de exceder o número de links que o bloco de mensagem é reservado ou tentativa de adicionar duas vezes em um destino específico à mesma fonte.

classe invalid_multiple_scheduling

Essa classe descreve uma exceção acionada quando um objeto de task_handle é agendada várias vezes usando o método de run de um objeto de task_group ou de structured_task_group sem intervenção uma chamada de métodos de wait ou de run_and_wait .

classe de invalid_operation

Essa classe descreve uma exceção acionada quando uma operação inválida é executada que não é descrita posteriormente exatamente por outro tipo de exceção lançada pelo tempo de execução de simultaneidade.

classe de invalid_oversubscribe_operation

Essa classe descreve uma exceção lançada quando o método de Context::Oversubscribe é chamado com o parâmetro de _BeginOversubscription definido como false sem uma chamada para o método prévio de Context::Oversubscribe com o parâmetro de _BeginOversubscription definido como true.

classe de invalid_scheduler_policy_key

Essa classe descreve uma exceção acionada quando uma chave válido ou desconhecidos é passada para um construtor do objeto de SchedulerPolicy , ou o método de SetPolicyValue de um objeto de SchedulerPolicy é passado uma chave que deve ser modificada usando outros meios como o método de SetConcurrencyLimits .

classe de invalid_scheduler_policy_thread_specification

Essa classe descreve uma exceção acionada quando é feita uma tentativa de definir os limites de simultaneidade de um objeto de SchedulerPolicy para que o valor da chave de MinConcurrency é menor que o valor da chave de MaxConcurrency .

classe de invalid_scheduler_policy_value

Essa classe descreve uma exceção acionada quando uma chave da diretiva de um objeto de SchedulerPolicy é definida como um valor inválido para essa chave.

Classe podem ser

A classe de ISource é a interface para todos os blocos de origem.Mensagens de bolha blocos de fontes para blocos de ITarget .

Classe ITarget

A classe de ITarget é a interface para todos os blocos de destino.Blocos de destino dissipam as mensagens oferecidas pela eles blocos de ISource .

join classe

Um bloco de mensagem de join é um único destino, ao código-fonte, propagator_block ordenada que combina as mensagens do tipo _Type de cada uma das fontes.

local de classe

Uma abstração de uma localidade física por hardware.

Classe de mensagem

O envelope básico de mensagem que contém a carga de dados que está sendo transmitidas entre blocos de mensagem.

classe de message_not_found

Essa classe descreve uma exceção acionada quando um bloco de mensagem não consegue localizar uma mensagem solicitada.

message_processor classe

A classe de message_processor é a classe base abstrata para processamento de objetos de message .Não há nenhuma garantia na ordem das mensagens.

classe de missing_wait

Essa classe descreve uma exceção acionada quando há tarefas ainda agendadas a um objeto de task_group ou de structured_task_group momento que o destrutor do objeto é executado.Essa exceção será lançada se o destrutor nunca é alcançado devido a uma pilha que desenrola como resultado de uma exceção.

classe multi_link_registry

O objeto de multi_link_registry é network_link_registry que gerencia vários blocos de origem ou vários blocos de destino.

multitype_join classe

Um bloco de mensagem de multitype_join é uma de origem, o bloco de mensagem de único destino que combina as mensagens de diferentes tipos de cada uma das fontes e oferece um tuple de mensagens combinadas aos seus alvos.

classe de nested_scheduler_missing_detach

Essa classe descreve uma exceção lançada quando o tempo de execução de simultaneidade detecta que você negligenciou chamar o método de CurrentScheduler::Detach em um contexto que conecta a um segundo agendador que usa o método de Attach do objeto de Scheduler .

network_link_registry classe

A classe base abstratas de network_link_registry gerencia links entre a fonte e blocos de destino.

classe de operation_timed_out

Essa classe descreve uma exceção acionada quando uma operação expirou.

ordered_message_processor classe

ordered_message_processor é message_processor que permite que os blocos de mensagem processem mensagens na ordem em que foram recebidas.

classe de overwrite_buffer

Um bloco de mensagem de overwrite_buffer é uma mais a línguas de chegada, várias origem, propagator_block ordenada capaz de armazenar uma única mensagem de cada vez.As novas mensagens substituem guardararam anteriormente.

progress_reporter classe

A classe de repórter de progresso permite relatar notificações de progresso de um tipo específico.Cada objeto de progress_reporter é associado a uma ação ou a uma operação assíncrona específica.

propagator_block classe

A classe de propagator_block é uma classe base abstrata para os blocos de mensagem que são uma origem e destino.Combina a funcionalidade de classes de source_block e de target_block .

classe de reader_writer_lock

Uma gravador- preferência fila- com o bloqueio de leitor- gravador com o local de journaling somente.O bloqueio concede primeiro no primeiro - out acesso a criadores de (FIFO) e morre de fome leitores em uma carga contínuo dos criadores.

Classe de ScheduleGroup

Representa uma abstração para um grupo de cronograma.Grupos de cronograma organizam um conjunto de trabalho relacionadas que benefícios de poder ser agendada em conjunto ou prazo, executar outra tarefa no mesmo grupo antes de mover para outro grupo, ou espacial, executar vários itens dentro do mesmo grupo no mesmo nó todo ou soquete de auditoria.

Classe de agendador

Representa uma abstração para um agendador de tempo de execução de simultaneidade.

classe scheduler_not_attached

Essa classe descreve uma exceção acionada quando uma operação é executada que requer um agendador ser anexado ao contexto atual e um não é.

classe de scheduler_resource_allocation_error

Essa classe descreve uma exceção acionada por causa de uma falha adquirir um recurso importante em tempo de execução de simultaneidade.

scheduler_worker_creation_error classe

Essa classe descreve uma exceção acionada por causa de uma falha criar um contexto de trabalho em tempo de execução de simultaneidade.

Classe de SchedulerPolicy

A classe de SchedulerPolicy contém um conjunto de pares chave/valor, um para cada elemento de diretiva, que controlam o comportamento de uma instância de agendador.

simple_partitioner classe

A classe de simple_partitioner representa um particionamento estática do intervalo iterado sobre por parallel_for.O partitioner divide o intervalo em partes para que cada parte tem pelo menos o número de iterações especificadas pelo tamanho da parte.

classe de single_assignment

Um bloco de mensagem de single_assignment é uma mais a línguas de chegada, várias origem, propagator_block ordenada capaz de armazenar um único contra gravação, uma vez que message.

classe single_link_registry

O objeto de single_link_registry é network_link_registry que gerencia somente um único bloco de origem ou de destino.

source_block classe

A classe de source_block é uma classe base abstrata para blocos de origem somente.A classe fornece verifica básicas da funcionalidade de gerenciamento de link bem como de erros comuns.

source_link_manager classe

O objeto de source_link_manager gerencia links de rede do bloco de mensagem para blocos de ISource .

static_partitioner classe

A classe de static_partitioner representa um particionamento estática do intervalo iterado sobre por parallel_for.O partitioner divide o intervalo em tantas partes porque há trabalhadores disponíveis para o agendador underyling.

classe de structured_task_group

A classe representa uma coleção de structured_task_group altamente estruturada de trabalho paralelo.Você pode colocar tarefas paralelas individuais a structured_task_group usando objetos de task_handle , e aguarda que eles tenham concluído, ou cancelar-lo o grupo de trabalho antes de ela ser executado, que anulará todas as tarefas que não começarem a execução.

target_block classe

A classe de target_block é uma classe base abstrata que fornece a funcionalidade básica de gerenciamento de link e checagem de erros para o destino bloqueem somente.

a classe (Runtime de simultaneidade) de tarefas.

A classe de (PPL) task de biblioteca dos padrões de paralela.Um objeto de task representa o trabalho que pode ser executado de forma assíncrona, e simultaneamente com outras tarefas de trabalho e paralela gerados por algoritmos paralelos em tempo de execução de simultaneidade.Gera um resultado de tipo _ResultType na conclusão com êxito.As tarefas de tipo task<void> não produz nenhum resultado.Uma tarefa pode ser esperada na e cancelado independentemente das outras tarefas.Também pode ser composto com outras tarefas usando continuaçõesthen(), e joinswhen_all) e padrões dewhen_anybem escolhidos ().

task_canceled classe

Essa classe descreve uma exceção acionada pelas tarefas de PPL mergulha para forçar a tarefa atual cancelar.Também será apresentada pelo método de get() em tarefa, para uma tarefa cancelada.

task_completion_event classe

A classe de task_completion_event permite que você atrasar a execução de uma tarefa até que uma condição seja satisfeita, ou inicie uma tarefa em resposta a um evento externo.

task_continuation_context classe

A classe de task_continuation_context permite que você especifique onde você deseja de uma continuação de ser executado.Só é útil usar esta classe de Windows Store app.Para apps não- deWindows Store , o contexto de execução de continuação de tarefa é determinado em tempo de execução, e não configurável.

classe de task_group

A classe de task_group representa uma coleção de trabalho paralelo que pode ser esperada sobre ou cancelado.

classe de task_handle

A classe de task_handle representa um item individual paralelo de trabalho.Encapsula as instruções e os dados necessários para executar um bico de trabalho.

classe de timer

Um bloco de mensagem de timer é um único destino source_block capaz de enviar uma mensagem ao seu destino após um período de tempo especificado ou passados em intervalos específicos.

classe transformador

Um bloco de mensagem de transformer é um único destino, várias origem, propagator_block ordenada que podem aceitar mensagens de um tipo e é capaz de armazenar um número ilimitado de mensagens de um tipo diferente.

classe de unbounded_buffer

Um bloco de mensagem de unbounded_buffer é uma mais a línguas de chegada, várias origem, propagator_block ordenada capaz de armazenar um número ilimitado de mensagens.

classe de unsupported_os

Essa classe descreve uma exceção acionada quando um sistema operacional sem suporte é usado.O tempo de execução de simultaneidade não suporta os sistemas operacionais anteriores ao Windows XP com Service Pack 3.

Dd492819.collapse_all(pt-br,VS.110).gifEstruturas

Nome

Descrição

Estrutura de DispatchState

A estrutura de DispatchState é usada para transferir o estado para o método de IExecutionContext::Dispatch .Descreve as circunstâncias em que o método de Dispatch é chamado em uma interface de IExecutionContext .

Estrutura de IExecutionContext

Uma interface para um contexto de execução que pode executar em um processador virtual e determinado contexto cooperativa ser alternado.

Estrutura de IExecutionResource

Uma abstração para um segmento de hardware.

Estrutura de IResourceManager

Uma interface para o Gerenciador de Recursos de tempo de execução de simultaneidade.Esta é a interface por que os agendadores se comunicam com o Gerenciador de Recursos.

Estrutura de IScheduler

Uma interface para uma abstração de um agendador de trabalho.O Gerenciador de Recursos de tempo de execução de simultaneidade usa esta interface para se comunicar com os agendadores de trabalho.

Estrutura de ISchedulerProxy

A interface por que os agendadores se comunicam com o Gerenciador de Recursos de tempo de execução de simultaneidade para negociar a atribuição de recursos.

Estrutura de IThreadProxy

Uma abstração para um segmento de execução.Dependendo da chave de política de SchedulerType de agendador você cria, o Gerenciador de Recursos conceder-lhe-á um proxy do segmento que é suportado por um segmento normal do Win32 ou por um segmento de schedulable (UMS) do modo de usuário.Segmentos de UMS são suportados em sistemas operacionais de 64 bits com versão Windows 7 e superior.

Estrutura de ITopologyExecutionResource

Uma interface a um recurso de execução como definido pelo Gerenciador de Recursos.

Estrutura de ITopologyNode

Uma interface para um nó de topologia como definido pelo Gerenciador de Recursos.Um nó contém um ou mais recursos de execução.

Estrutura de IUMSCompletionList

Representa uma lista para completar de UMS.Quando os blocos UMS segmento seguro, o agendador designado contexto agendando é enviado para tomar uma decisão de agendar na raiz virtual subjacente do processador quando o segmento original é bloqueado.Quando o segmento original, desbloqueia o sistema operacional enfileira-o à lista de conclusão que é acessível através esta interface.O agendador pode ver a lista para completar no contexto agendando designado ou em qualquer outro local que procura por trabalho.

Estrutura de IUMSScheduler

Uma interface para uma abstração de um agendador de trabalho que deseja que o Gerenciador de Recursos de tempo de execução de simultaneidade para fornecer ao modo de usuário (UMS) schedulable segmento.O Gerenciador de Recursos usa esta interface para se comunicar com os agendadores de segmentos de UMS.A interface de IUMSScheduler herda da interface de IScheduler .

Estrutura de IUMSThreadProxy

Uma abstração para um segmento de execução.Se você desejar que o agendador para ser concedido segmentos schedulable de (UMS) do modo de usuário, defina o valor para o elemento SchedulerKind de política de agendador a UmsThreadDefault, e implementa a interface de IUMSScheduler .Segmentos de UMS são suportados apenas em sistemas operacionais de 64 bits com versão Windows 7 e superior.

Estrutura de IUMSUnblockNotification

Representa uma notificação do Gerenciador de Recursos que um proxy do segmento que bloqueasse e aciona um retorno agendador designado para o contexto agendando desbloqueou e está pronto para ser agendada.Essa interface é inválido uma vez que o contexto associado a execução de proxy de segmento, retornado pelo método de GetContext , é reprogramado.

Estrutura de IVirtualProcessorRoot

Uma abstração para um segmento de hardware em que um proxy de segmento pode executar.

Dd492819.collapse_all(pt-br,VS.110).gifEnumerações

Nome

Descrição

enumeração de agent_status

Estados válidos para agent.

Enumeração Agents_EventType

Os tipos de eventos que podem ser rastreados usando a funcionalidade de rastreamento ofereceram pela biblioteca de agentes

Enumeração de ConcRT_EventType

Os tipos de eventos que podem ser rastreados usando a funcionalidade de rastreamento ofereceram em tempo de execução de simultaneidade.

Enumeração Concrt_TraceFlags

Sinalizadores de rastreamento para os tipos de eventos

Enumeração de CriticalRegionType

O tipo de região crítica um contexto está em.

Enumeração de DynamicProgressFeedbackType

Usado pela política de DynamicProgressFeedback para descrever se os recursos para o agendador rebalanced de acordo com as informações obtidas estatísticas de agendador ou baseada somente nos processadores virtuais que vão e reaparece de estado ocioso com chamadas a métodos de Activate e de Deactivate na interface de IVirtualProcessorRoot .Para obter mais informações sobre as políticas de agendador disponíveis, consulte Enumeração de PolicyElementKey.

enumeração de join_type

O tipo de um bloco de mensagem de join .

enumeração de message_status

As respostas válidos para uma oferecem de message objeto para um bloco.

Enumeração de PolicyElementKey

Teclas de política que descrevem aspectos do comportamento de agendador.Cada elemento de diretiva é descrito por um par chave-valor.Para obter mais informações sobre as políticas de agendador e do seu impacto em agendadores, consulte Agendador de tarefa (tempo de execução de simultaneidade).

Enumeração de SchedulerType

Usado pela política de SchedulerKind para descrever o tipo de segmentos que o agendador deve utilizar para contextos subjacentes de execução.Para obter mais informações sobre as políticas de agendador disponíveis, consulte Enumeração de PolicyElementKey.

Enumeração de SchedulingProtocolType

Usado pela política de SchedulingProtocol para descrever agendar o algoritmo que será utilizado para o agendador.Para obter mais informações sobre as políticas de agendador disponíveis, consulte Enumeração de PolicyElementKey.

Enumeração de SwitchingProxyState

Usado para denotar o estado um proxy do segmento está em, quando estiver executando uma opção cooperativo de contexto a um proxy diferente de segmento.

enumeração de task_group_status

Descreve o status de execução de um objeto de task_group ou de structured_task_group .Um valor de esse tipo é retornado por vários métodos nas tarefas que esperam agendadas a um grupo de trabalho para concluir.

Enumeração WinRTInitializationType

Usado pela política de WinRTInitialization para descrever e como se o tempo de execução do windows será inicializado em segmentos de agendador para um aplicativo executado em sistemas operacionais windows com a versão 8 ou maior.Para obter mais informações sobre as políticas de agendador disponíveis, consulte Enumeração de PolicyElementKey.

Dd492819.collapse_all(pt-br,VS.110).gifFunções

Nome

Descrição

Função de Alloc

Atribui um bloco de memória de tamanho especificado em tempo de execução de simultaneidade que armazena em cache Suballocator.

função de asend

Sobrecarregado.Uma operação assíncrona de enviar, que agende uma tarefa propagar os dados para o bloco de destino.

Função de cancel_current_task

Cancela a tarefa atualmente em execução.Essa função pode ser chamada de dentro do corpo de uma tarefa anular a execução de tarefa e fazer com que digite o estado de canceled .Quando pode ser usada em resposta à função de is_task_cancellation_requested , você também pode usá-lo por si só, para iniciar cancelamento de tarefa que está em execução atualmente.

Não é um cenário suportado para chamar essa função se você não está dentro do corpo de task.Isso resultará a comportamento indeterminado como uma falha ou se enquadram em seu aplicativo.

Função de create_async

Cria uma compilação assíncrono em tempo de execução do windows com base em um objeto fornecido usuário lambda ou função.O tipo de retorno de create_async é um de IAsyncAction^, de IAsyncActionWithProgress<TProgress>^, de IAsyncOperation<TResult>^, ou de IAsyncOperationWithProgress<TResult, TProgress>^ baseado na assinatura lambda passado para o método.

Função create_task

Sobrecarregado.Cria um objeto de PPL tarefa .create_task pode seja usado em qualquer lugar usaria um construtor de tarefas.Fornece especialmente para sua conveniência, porque ela permite o uso da palavra-chave de auto ao criar se tarefas.

Função de CreateResourceManager

Retorna uma interface que representa a instância singleton do Gerenciador de Recursos de tempo de execução de simultaneidade.O Gerenciador de Recursos é responsável para atribuir aos recursos agendadores que desejam cooperar entre si.

Função de DisableTracing

Desativa verificação que rastreiam em tempo de execução de simultaneidade.Essa função é substituída porque o rastreamento de ETW é desregistrado por padrão.

Função de EnableTracing

Habilita o rastreamento no tempo de execução de simultaneidade.Essa função é substituída porque o rastreamento de ETW é agora sobre por padrão.

Liberar a função

Libera um bloco de memória atribuído anteriormente pelo método de Alloc ao tempo de execução de simultaneidade que armazena em cache Suballocator.

Função de GetExecutionContextId

Retorna um identificador exclusivo que pode ser atribuído a um contexto de execução que implementa a interface de IExecutionContext .

Função de GetOSVersion

Retorna a versão do sistema operacional.

Função de GetProcessorCount

Retorna o número de segmentos de hardware no sistema subjacente.

Função de GetProcessorNodeCount

Retorna o número de nós todo ou de pacotes do processador no sistema subjacente.

Função de GetSchedulerId

Retorna um identificador exclusivo que pode ser atribuído a um agendador que implementa a interface de IScheduler .

Função de interruption_point

Cria um ponto de interrupção para o botão.Se um botão está em andamento no contexto onde essa função é chamada, isso irá acionar uma exceção interna que nulo a execução de trabalho paralelo atualmente em execução.Se o botão não está em andamento, a função não fará nada.

função is_current_task_group_canceling

Retorna um indicando se o grupo de trabalho que está atualmente executar no contexto atual é embutido no meio de um ativo (ou cancelar é logo).Observe que se não houver nenhum executar de grupo de trabalho atualmente embutido no contexto atual, false será retornado.

Função de is_task_cancellation_requested

Retorna um indicando se a tarefa que está executando atualmente recebeu uma solicitação cancelar a execução.O botão é solicitado em uma tarefa se a tarefa foi criada com um símbolo cancelar, e a fonte token associou com o símbolo é cancelada.

função de make_choice

Sobrecarregado.Constrói um bloco de mensagem de choice de Scheduler opcional ou de ScheduleGroup e entre duas e dez fontes de entrada.

função de make_greedy_join

Sobrecarregado.Constrói um bloco de mensagem de greedy multitype_join de Scheduler opcional ou de ScheduleGroup e entre duas e dez fontes de entrada.

função de make_join

Sobrecarregado.Constrói um bloco de mensagem de non_greedy multitype_join de Scheduler opcional ou de ScheduleGroup e entre duas e dez fontes de entrada.

função de make_task

Um método de fábrica para criar um objeto de task_handle .

Função de parallel_buffered_sort

Sobrecarregado.Organiza elementos em um intervalo especificado em uma ordem nondescending, ou de acordo com um critério classificação especificado por um predicado binário, paralelamente.Essa função é semanticamente semelhante a std::sort que é baseado comparar-, instável, o tipo no lugar exceto que precisam espaço extra de O(n) , e exigem a inicialização padrão para elementos que estão sendo classificados.

função de parallel_for

Sobrecarregado.parallel_for itera através de um intervalo de índices e executa uma função de usuário fornecida em cada iteração, paralelamente.

função de parallel_for_each

Sobrecarregado.parallel_for_each aplica uma função especificada para cada elemento em um intervalo, paralelamente.Semanticamente é equivalente à função de for_each no namespace de std , exceto que a iteração sobre os elementos é executada paralelamente, e ordem de iteração não é especificado.O argumento _Func deve suportar um operador de chamada de função do formulário operator()(T) onde o parâmetro T é o tipo de item do recipiente que está sendo iterado sobre.

função de parallel_invoke

Sobrecarregado.Executa os objetos de função fornecidos como parâmetros paralelamente, e blocos até que terminem executar.Cada objeto de função pode ser uma expressão lambda, um ponteiro para funcionar, ou qualquer objeto que suporte o operador de chamada de função com a assinatura void operator()().

Função de parallel_radixsort

Sobrecarregado.Organiza elementos em um intervalo especificado não em uma ordem decrescente usando um algoritmo de classificação de raiz.Esta é uma função estável de tipo que requer uma função de projeção que pode projetar elementos ser classificado em sem sinal inteiro- como chaves.A inicialização padrão é necessária para elementos que estão sendo classificados.

Função de parallel_reduce

Sobrecarregado.Calcula a soma de todos os elementos em um intervalo especificado para a computação somas parciais sucessivas, ou calcula o resultado de resultados parciais sucessivos obtidos da mesma forma de usar uma operação binário especificada diferente da soma, paralelamente.parallel_reduce semanticamente é semelhante a std::accumulate, exceto que requer a operação binário ser associativa, e requer um valor de identidade em vez de um valor inicial.

Função de parallel_sort

Sobrecarregado.Organiza elementos em um intervalo especificado em uma ordem nondescending, ou de acordo com um critério classificação especificado por um predicado binário, paralelamente.Essa função é semanticamente semelhante a std::sort que é um tipo comparar- base, instável, no lugar.

Função de parallel_transform

Sobrecarregado.Aplica um objeto especificado de função para cada elemento em um intervalo de origem, ou um par de elementos de dois intervalos de origem, e copia os valores de retorno do objeto de função em um intervalo de destino, paralelamente.Este é semanticamente funcional equivalente a std::transform.

receba a função

Sobrecarregado.Um geral recebe a implementação, permitindo que um contexto espere exatamente uma fonte de dados e filtre os valores que são aceitos.

Função de run_with_cancellation_token

Executa um objeto de função imediatamente e sincronamente no contexto de um símbolo determinado cancelar.

função de enviar

Sobrecarregado.Uma operação síncrono de enviar, que aguardar até que o destino aceitar ou diminui a mensagem.

Função de set_task_execution_resources

Sobrecarregado.Restringe os recursos de execução usados pelos segmentos de trabalho internos de tempo de execução de concorrência ao conjunto de afinidade especificado.

É válido somente chamar este método antes que o Gerenciador de Recursos é criado, ou entre dois tempo de vida do Gerenciador de Recursos.Pode ser chamado várias vezes enquanto o Gerenciador de Recursos não existe no momento de chamada.Depois que um limite de afinidade foi definido, permanece em vigor até a chamada válido seguinte método de set_task_execution_resources .

A máscara de afinidade forneceu não precisa ser um subconjunto de máscara de afinidade do processo.Afinidade de processo será atualizada se necessário.

função de troca

Troca os elementos de dois objetos de concurrent_vector .

Função Trace_agents_register_name

Associa o nome fornecido para o bloco ou o agente de mensagem no rastreamento de ETW.

função try_receive

Sobrecarregado.Um geral blocos recebe a implementação, permitindo que um contexto procure exatamente uma fonte de dados e filtre os valores que são aceitos.Se os dados não estão prontos, o método retornará falso.

função de espera

Pausa o contexto atual para um período de tempo especificado.

Função de when_all

Sobrecarregado.Cria uma tarefa que ela seja concluída com sucesso quando todas as tarefas fornecidas como argumentos completa com êxito.

Função de when_any

Sobrecarregado.Cria uma tarefa que ela seja concluída com sucesso quando algumas das tarefas fornecidas como argumentos completa com êxito.

Dd492819.collapse_all(pt-br,VS.110).gifOperadores

Nome

Descrição

operador! Operador =

Teste se o objeto de concurrent_vector no lado esquerdo do operador não é igual ao objeto de concurrent_vector no lado direito.

operador & & Operador

Sobrecarregado.Cria uma tarefa que ela seja concluída com sucesso quando ambas as tarefas fornecidas como argumentos completa com êxito.

Operator|| Operador

Sobrecarregado.Cria uma tarefa que ela seja concluída com sucesso quando uma das tarefas fornecidas como argumentos for concluída com êxito.

operador de operator<

Teste se o objeto de concurrent_vector no lado esquerdo do operador é menor que o objeto de concurrent_vector no lado direito.

operador de operator<=

Teste se o objeto de concurrent_vector no lado esquerdo do operador é menor ou igual ao objeto de concurrent_vector no lado direito.

operador de operator==

Teste se o objeto de concurrent_vector no lado esquerdo do operador é igual ao objeto de concurrent_vector no lado direito.

operador de operator>

Teste se o objeto de concurrent_vector no lado esquerdo do operador é maior do que o objeto de concurrent_vector no lado direito.

operador de operator>=

Teste se o objeto de concurrent_vector no lado esquerdo do operador é maior ou igual ao objeto de concurrent_vector no lado direito.

Dd492819.collapse_all(pt-br,VS.110).gifConstantes

Nome

Descrição

Constante de AgentEventGuid

Uma categoria GUID ({B9B5B78C - 0713 - - 4898 A 21. um. 67949DCED07 C}) que descreve eventos de ETW acionou de agente da biblioteca em tempo de execução de simultaneidade.

Constante de ChoreEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente às tarefas ou as tarefas.

Constante de ConcRT_ProviderGuid

O provedor de GUID ETW para o tempo de execução de simultaneidade.

Constante CONCRT_RM_VERSION_1

Indica o suporte da interface do Gerenciador de Recursos definido no Visual Studio 2010.

Constante de ConcRTEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que mais especificamente não são descritos por outra categoria.

Constante de ContextEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente aos contextos.

Constante de COOPERATIVE_TIMEOUT_INFINITE

Avalie indicar que uma espera nunca deve tempo limite.

Constante de COOPERATIVE_WAIT_TIMEOUT

Avalie indicar que um programado de espera para fora.

Constante de INHERIT_THREAD_PRIORITY

Valor especial para a chave ContextPriority de política que indica que a prioridade de segmento de todos os contextos no agendador deve ser a mesma que o segmento que criou o agendador.

Constante de LockEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente para bloqueios.

Constante de MaxExecutionResources

O valor especial para a diretiva MinConcurrency fecha e MaxConcurrency.As opções para o número de hardware segmento seguro no computador na ausência de outras restrições.

Constante de PPLParallelForeachEventGuid

Uma categoria GUID que descreve eventos de ETW acionados pelo tempo de execução de simultaneidade que são relacionados diretamente ao uso da função de parallel_for_each .

Constante de PPLParallelForEventGuid

Uma categoria GUID que descreve eventos de ETW acionados pelo tempo de execução de simultaneidade que são relacionados diretamente ao uso da função de parallel_for .

Constante de PPLParallelInvokeEventGuid

Uma categoria GUID que descreve eventos de ETW acionados pelo tempo de execução de simultaneidade que são relacionados diretamente ao uso da função de parallel_invoke .

Constante de ResourceManagerEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente ao gerenciador de recursos.

Constante de ScheduleGroupEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente grupos de cronograma.

Constante de SchedulerEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente para a atividade do agendador.

Constante de VirtualProcessorEventGuid

Uma categoria GUID que descreve eventos de ETW acionou em tempo de execução de simultaneidade que são relacionados diretamente aos processadores virtuais.

Requisitos

Cabeçalho: agents.h, concrt.h, concrtrm.h, concurrent_priority_queue.h, concurrent_queue.h, concurrent_unordered_map.h, concurrent_unordered_set.h, concurrent_vector.h, ppl.h, ppltasks.h

Consulte também

Outros recursos

Referência (tempo de execução de simultaneidade)