Compartir a través de


concurrency (Espacio de nombres)

El espacio de nombres concurrency proporciona las clases y funciones que proporcionan acceso al runtime de simultaneidad, un marco de programación simultánea para C++.Para obtener más información, vea Runtime de simultaneidad.

namespace concurrency;

Members

Dd492819.collapse_all(es-es,VS.110).gifTypedefs

Name

Descripción

runtime_object_identity

Cada instancia del mensaje tiene una identidad que lo sigue mientras se clona y pasa entre los componentes de mensajería.Ésta no puede ser la dirección del objeto de mensaje.

task_status

Un tipo que representa el estado terminal de una tarea.Los valores válidos son completed e canceled.

TaskProc

Una abstracción básica para una tarea, definida como void (__cdecl * TaskProc)(void *).Se llama a TaskProc para invocar el cuerpo de una tarea.

Dd492819.collapse_all(es-es,VS.110).gifClases

Name

Descripción

affinity_partitioner (Clase)

La clase de affinity_partitioner es similar a la clase de static_partitioner , pero mejora la afinidad de la caché por su elección de los subranges a los subprocesos de trabajo.Puede mejorar el rendimiento de manera significativa cuando un bucle se ejecuta de nuevo en el mismo conjunto de datos, y los datos se ajusta en caché.Observe que el mismo objeto de affinity_partitioner se debe utilizar con iteraciones subsiguientes de un bucle paralelo que se ejecuta en un conjunto de datos determinado, para beneficiarse de la situación de los datos.

agent (Clase)

Una clase diseñada para usarse como una clase base para todos los agentes independientes.Se usa para ocultar el estado de otros agentes e interactuar con mensaje- pasar.

auto_partitioner (Clase)

La clase de auto_partitioner representa el método predeterminado parallel_for, parallel_for_each y uso de parallel_transform de dividir el intervalo que iteran sobre.Este método de intervalos de employes de partición que roba para el equilibrio de carga así como por- recorre la cancelación.

bad_target (Clase)

Esta clase describe una excepción cuando un bloque de mensajería recibe un puntero a un destino que sea válido para la operación que se realiza.

Clase call

Un bloque de mensajería call es un target_block con varios orígenes y ordenado, que invoca una función especificada al recibir un mensaje.

cancellation_token (Clase)

La clase de cancellation_token representa la capacidad de determinar si alguna operación ha solicitado para cancelar.

cancellation_token_registration (Clase)

La clase de cancellation_token_registration representa una notificación de devolución de cancellation_token.

cancellation_token_source (Clase)

La clase de cancellation_token_source representa la capacidad de cancelar una operación.

Clase choice

Un bloque de mensajería choice es un bloque de varios orígenes, de destino único que representa una interacción del flujo de control con un conjunto de orígenes.El bloque de elección esperará a cualquiera de los diversos orígenes para generar un mensaje y propagará el índice del origen que produjo el mensaje.

Clase combinable

El objeto combinable<T> está pensado para proporciona copias de subproceso privadas de datos, para realizar subcómputos de subprocesos locales sin bloqueos durante algoritmos paralelos.Al final de la operación paralela, los subcómputos de subprocesos privados pueden combinarse en un resultado final.Esta clase se puede utilizar en lugar de una variable compartida y puede dar lugar a una mejora en el rendimiento si, de lo contrario, habría mucha contención en esa variable compartida.

concurrent_priority_queue (Clase)

La clase de concurrent_priority_queue es un contenedor que permite que varios subprocesos inserten y que hacen extrae los elementos de forma simultánea.Los elementos se saca de la prioridad ordenada donde la prioridad viene determinada por un functor proporcionado como argumento de plantilla.

Clase concurrent_queue

La clase concurrent_queue es una clase de contenedor de secuencia que permite el acceso a sus elementos donde el primero en entrar es el primero en salir.Habilita un conjunto limitado de operaciones simultaneidad- seguras, como push y try_pop.

concurrent_unordered_map (Clase)

La clase de concurrent_unordered_map es un contenedor simultaneidad-seguro que controla una secuencia de la variar-longitud de elementos de std::pair<const _Key_type, _Element_type>escrito.La secuencia se representan de forma que habilita simultaneidad- seguro anexe, acceso a elementos, acceso de iterador, y las operaciones de recorrido del iterador.

concurrent_unordered_multimap (Clase)

La clase de concurrent_unordered_multimap es un contenedor simultaneidad-seguro que controla una secuencia de la variar-longitud de elementos de std::pair<const _Key_type, _Element_type>escrito.La secuencia se representan de forma que habilita simultaneidad- seguro anexe, acceso a elementos, acceso a iteradores y las operaciones de recorrido del iterador.

concurrent_unordered_multiset (Clase)

La clase de concurrent_unordered_multiset es un contenedor simultaneidad- seguro que controla una secuencia de la variar- longitud de elementos de _Key_type escrito.La secuencia se representan de forma que habilita simultaneidad- seguro anexe, acceso a elementos, acceso a iteradores y las operaciones de recorrido del iterador.

concurrent_unordered_set (Clase)

La clase de concurrent_unordered_set es un contenedor simultaneidad- seguro que controla una secuencia de la variar- longitud de elementos de _Key_type escrito.La secuencia se representan de forma que habilita simultaneidad- seguro anexe, acceso a elementos, acceso a iteradores y las operaciones de recorrido del iterador.

Clase concurrent_vector

La clase concurrent_vector es una clase de contenedor de secuencia que permite el acceso aleatorio a cualquier elemento.Habilita simultaneidad- seguro anexa, acceso a elementos, acceso de iterador, y las operaciones de recorrido del iterador.

Context (Clase)

Representa una abstracción para un contexto de ejecución.

context_self_unblock (Clase)

Esta clase describe una excepción cuando el método de Unblock de un objeto de Context se realiza desde el mismo contexto.Esto indicaría que un contexto especificado ha intentado desbloquearse a sí mismo.

context_unblock_unbalanced (Clase)

Esta clase describe la excepción iniciada cuando las llamadas a métodos de Block y de Unblock de un objeto de Context no están emparejadas correctamente.

critical_section (Clase)

Una exclusión mutua no reentrante que es explícitamente consciente del runtime de simultaneidad.

CurrentScheduler (Clase)

Representa una abstracción para el programador actual asociado al contexto de la llamada.

default_scheduler_exists (Clase)

Esta clase describe una excepción cuando se llama al método de Scheduler::SetDefaultSchedulerPolicy cuando un programador predeterminado ya existe en el proceso.

event (Clase del runtime de simultaneidad)

Un evento de reinicio manual que es explícitamente consciente del runtime de simultaneidad.

improper_lock (Clase)

Esta clase describe una excepción cuando un bloqueo se adquiere incorrectamente.

improper_scheduler_attach (Clase)

Esta clase describe una excepción cuando el método de Attach se llama un objeto de Scheduler asociado ya al contexto actual.

improper_scheduler_detach (Clase)

Esta clase describe una excepción cuando el método de CurrentScheduler::Detach se llama en un contexto no se ha asociado ningún programador mediante el método de Attach de un objeto de Scheduler .

improper_scheduler_reference (Clase)

Esta clase describe una excepción cuando el método de Reference se llama un objeto de Scheduler que está cerrando, un contexto que no forme parte del programador.

invalid_link_target (Clase)

Esta clase describe una excepción cuando el método de link_target de un bloque de mensajería se denomina y el bloque de mensajería no pueden vincular al destino.Este puede ser el resultado de superar el número de vínculos que el bloque de mensajería está permitido o que intentan vincular un destino concreto dos veces al mismo origen.

invalid_multiple_scheduling (Clase)

Esta clase describe una excepción cuando un objeto de task_handle se programa varias veces utilizando el método de run de un objeto de task_group o de structured_task_group sin una llamada intermedia a los métodos de wait o de run_and_wait .

invalid_operation (Clase)

Esta clase describe una excepción cuando se realiza una operación no válida que no se describe con más precisión por otro tipo de excepción iniciada por el runtime de simultaneidad.

invalid_oversubscribe_operation (Clase)

Esta clase describe una excepción cuando el método de Context::Oversubscribe es el parámetro de _BeginOversubscription establecido en false sin una llamada anterior al método de Context::Oversubscribe con el parámetro de _BeginOversubscription establecido en true.

invalid_scheduler_policy_key (Clase)

Esta clase describe la excepción iniciada cuando una clave no válida o desconocida se pasa a un constructor de objetos de SchedulerPolicy , o un método de SetPolicyValue de un objeto de SchedulerPolicy se pasa una clave que se debe cambiar mediante otros medios como el método de SetConcurrencyLimits .

invalid_scheduler_policy_thread_specification (Clase)

Esta clase describe una excepción cuando se realiza un intento de establecer los límites de simultaneidad de un objeto de SchedulerPolicy tales que el valor de la clave de MinConcurrency es menor que el valor de la clave de MaxConcurrency .

invalid_scheduler_policy_value (Clase)

Esta clase describe la excepción iniciada cuando una clave de directiva de un objeto de SchedulerPolicy se establece en un valor no válido para esa clave.

ISource (Clase)

La clase ISource es la interfaz para todos los bloques de origen.Los bloques de origen propagan mensajes a los bloques ITarget.

ITarget (Clase)

La clase ITarget es la interfaz para todos los bloques de destino.Los bloques de destinos consumen mensajes ofrecidos por los bloques ISource.

join (Clase)

Un bloque de mensajería join es un bloque propagator_block de destino único y de varios orígenes ordenado, que combina los mensajes de tipo _Type de cada uno de sus orígenes.

location (Clase)

Una abstracción de una ubicación física en el hardware.

message (Clase)

El sobre del mensaje básico que contiene la carga de datos que se pasan entre bloques de mensajería.

message_not_found (Clase)

Esta clase describe una excepción cuando un bloque de mensajería no puede encontrar un mensaje solicitado.

message_processor (Clase)

La clase message_processor es la clase base abstracta del procesamiento de objetos message.No hay ninguna garantía en la clasificación de los mensajes.

missing_wait (Clase)

Esta clase describe la excepción iniciada cuando hay tareas todavía programadas a un objeto de task_group o de structured_task_group en el momento en que el destructor del objeto.Esta excepción nunca se producirá si el destructor se alcanza debido a una pila que desenredo como resultado de una excepción.

multi_link_registry (Clase)

El objeto multi_link_registry es network_link_registry que administra varios bloques de origen o varios bloques de destino.

multitype_join (Clase)

Un bloque de mensajería multitype_join es un bloque de mensajería de destino único, de varios orígenes, que combina los mensajes de diferentes tipos de cada uno de sus orígenes y ofrece una tupla de los mensajes combinados con sus destinos.

nested_scheduler_missing_detach (Clase)

Esta clase describe una excepción cuando el runtime de simultaneidad detecta que se descuidó llamar al método de CurrentScheduler::Detach en un contexto que asoció a un segundo programador mediante el método de Attach del objeto de Scheduler .

network_link_registry (Clase)

La clase base abstracta network_link_registry administra los vínculos entre los bloques de origen y de destino.

operation_timed_out (Clase)

Esta clase describe la excepción iniciada cuando una operación excede el tiempo de espera.

ordered_message_processor (Clase)

Un ordered_message_processor es un message_processor que permite a los bloques de mensaje procesar los mensajes en el orden que se recibieron.

Clase overwrite_buffer

Un bloque de mensajería overwrite_buffer es un bloque propagator_block de destino único, de varios orígenes y ordenado capaz de almacenar un único mensaje cada vez.Los nuevos mensajes sobrescriben a los retenidos previamente.

progress_reporter (Clase)

La clase de reportero progreso permite informes de notificaciones de progreso de un tipo específico.Cada objeto de progress_reporter se enlaza a una acción o una operación asincrónico concreto.

propagator_block (Clase)

La clase propagator_block es una clase base abstracta para los bloques de mensaje que son un bloque de origen y de destino.Combina la funcionalidad de las clases source_block y target_block.

reader_writer_lock (Clase)

Un bloqueo de lectura o escritura basado en cola con preferencia del sistema de escritura con giro solo local.El bloqueo permite el acceso FIFO (el primero en entrar es el primero en salir) a los sistemas de escritura y lectores agotados bajo una carga continua de sistemas de escritura.

ScheduleGroup (Clase)

Representa una abstracción para un grupo de programación.Los grupos de programación organizan un conjunto de trabajos relacionados que se benefician de programarse juntos ya sea temporalmente, mediante la ejecución de otra tarea en el mismo grupo antes de trasladarse a otro grupo, o espacialmente, mediante la ejecución de varios elementos del mismo grupo en el mismo nodo NUMA o socket físico.

Scheduler (Clase)

Representa una abstracción para un programador del runtime de simultaneidad.

scheduler_not_attached (Clase)

Esta clase describe una excepción cuando se realiza una operación que requiere un programador se adjunta al contexto actual y uno no.

scheduler_resource_allocation_error (Clase)

Esta clase describe la excepción iniciada debido a un error adquirir un recurso crítico en el runtime de simultaneidad.

scheduler_worker_creation_error (Clase)

Esta clase describe la excepción iniciada debido a un error crear un contexto de ejecución del trabajo en el runtime de simultaneidad.

SchedulerPolicy (Clase)

La clase SchedulerPolicy contiene un conjunto de pares clave-valor, uno para cada elemento de la directiva, que controla el comportamiento de una instancia del programador.

simple_partitioner (Clase)

La clase de simple_partitioner representa un particiones estáticas del intervalo iterado encima por parallel_for.El particionador divide el intervalo en partes forma que cada pieza tiene al menos el número de iteraciones especificadas por el tamaño del fragmento.

Clase single_assignment

Un bloque de mensajería single_assignment es un bloque propagator_block de destino único, de varios orígenes y ordenado capaz de almacenar un único message en el que solo se puede escribir una vez.

single_link_registry (Clase)

El objeto single_link_registry es network_link_registry que administra un solo bloque de origen o bloque de destino.

source_block (Clase)

La clase source_block es una clase base abstracta para bloques sólo de origen.La clase proporciona funcionalidad de administración de vínculo básico, así como comprobaciones de errores frecuentes.

source_link_manager (Clase)

El objeto source_link_manager administra los vínculos de red de bloque de mensajería para los bloques ISource.

static_partitioner (Clase)

La clase de static_partitioner representa un particiones estáticas del intervalo iterado encima por parallel_for.El particionador divide el intervalo en tantos elementos como hay trabajadores disponibles para el programador underyling.

structured_task_group (Clase)

La clase structured_task_group representa una colección muy estructurada de trabajos paralelos.Puede poner en cola tareas individuales paralelas a structured_task_group mediante objetos task_handle, y esperar a que se completen, o cancelar el grupo de tareas antes de que haya finalizado su ejecución, que anulará cualquier tarea cuya ejecución no haya comenzado.

target_block (Clase)

La clase target_block es una clase base abstracta que proporciona funcionalidad de administración de vínculo básico y comprobación de errores solo para bloques de destino.

task (Clase) (Motor en tiempo de ejecución de simultaneidad)

La clase de (PPL) task de la biblioteca de modelos de procesamiento Paralelo.Un objeto de task representa el trabajo que se puede ejecutar de forma asincrónica, y simultáneamente a las otras tareas y trabajo en paralelo generados por los algoritmos paralelos en el runtime de simultaneidad.Genera un resultado de _ResultType escrito en la finalización correcta.Tareas de producción escrita de task<void> ningún resultado.Una tarea puede esperar sobre y cancelar independientemente de otras tareas.También puede estar compuesta con otras tareas utilizando las continuaciones (then), y combinación (when_all) y modelos choice (dewhen_any).

task_canceled (Clase)

Esta clase describe una excepción producida por las tareas de PPL capas para forzar la tarea actual de cancelar.También se produce en el método de get() en tarea, para una tarea cancelada.

task_completion_event (Clase)

La clase de task_completion_event permite retrasar la ejecución de una tarea hasta que se cumple una condición, o que iniciar una tarea en respuesta a un evento externo.

task_continuation_context (Clase)

La clase de task_continuation_context permite especificar donde desea que una continuación fuera ejecutada.Sólo es útil utilizar esta clase de una aplicación estilo Metro.Para las aplicaciones que no - Metro de estilo, el contexto de ejecución de continuación de la tarea se determina por el runtime, y no configurable.

task_group (Clase)

La clase task_group representa una colección de trabajo paralelo que se puede esperar o cancelar.

task_handle (Clase)

La clase task_handle representa un elemento de trabajo individual paralelo.Encapsula las instrucciones y los datos necesarios para ejecutar una parte de trabajo.

Clase timer

Un bloque de mensajería timer es un bloque source_block con destino único, capaz de enviar un mensaje a su destino cuando un período de tiempo especificado haya transcurrido o en intervalos concretos.

Clase transformer

Un bloque de mensajería transformer es un bloque propagator_block de destino único, de varios orígenes y ordenado capaz de almacenar un número ilimitado de mensajes de un tipo diferente.

Clase unbounded_buffer

Un bloque de mensajería unbounded_buffer es un bloque propagator_block de destino único, de varios orígenes y ordenado capaz de almacenar un número ilimitado de mensajes.

unsupported_os (Clase)

Esta clase describe una excepción cuando se utiliza un sistema operativo no compatible.El runtime de simultaneidad no admite sistemas operativos anteriores a Windows XP con Service Pack 3.

Dd492819.collapse_all(es-es,VS.110).gifEstructuras

Name

Descripción

DispatchState (Estructura)

La estructura DispatchState se usa para transferir el estado al método IExecutionContext::Dispatch.Describe las circunstancias bajo las que el método Dispatch se invoca en una interfaz IExecutionContext.

IExecutionContext (Estructura)

Una interfaz a un contexto de ejecución que se puede ejecutar en un procesador virtual determinado y que puede cambiar de contexto de forma cooperativa

IExecutionResource (Estructura)

Una abstracción para un subproceso del hardware.

IResourceManager (Estructura)

Una interfaz al administrador de recursos del runtime de simultaneidad.Esta es la interfaz que usan los programadores para comunicares con el administrador de recursos.

IScheduler (Estructura)

Una interfaz a una abstracción de un programador de trabajo.El administrador de recursos del runtime de simultaneidad usa esta interfaz para comunicar con programadores de trabajo.

ISchedulerProxy (Estructura)

La interfaz por la que los programadores se comunican con el administrador de recursos del runtime de simultaneidad para negociar la asignación de recursos.

IThreadProxy (Estructura)

Una abstracción para un subproceso de ejecución.Dependiendo de la clave de directiva SchedulerType del programador que crea, el administrador de recursos le permitirá un proxy del subproceso que está respaldado por un subproceso de Win32 normal o por un subproceso programable de modo de usuario (UMS).Los subprocesos UMS se admiten en sistemas operativos de 64 bits con versión de Windows 7 y superior.

ITopologyExecutionResource (Estructura)

Una interfaz a un recurso de ejecución definidos por el administrador de recursos.

ITopologyNode (Estructura)

Una interfaz a un nodo de la topología definidos por el administrador de recursos.Un nodo contiene uno o varios recursos de la ejecución.

IUMSCompletionList (Estructura)

Representa una lista de realización UMS.Cuando se bloquea un subproceso UMS, el contexto de programación designado del programador se envía para tomar una decisión sobre qué programar en la raíz del procesador virtual subyacente mientras se bloquea el subproceso original.Cuando el subproceso original se desbloquea, el sistema operativo lo pone en cola de la lista de finalización que es accesible a través de esta interfaz.El programador puede consultar la lista de finalización en el contexto de programación designado o en cualquier otro lugar que busca trabajo.

IUMSScheduler (Estructura)

Una interfaz a una abstracción de un programador de trabajo que desea que el administrador de recursos del runtime de simultaneidad controle los subprocesos programables de modo de usuario (UMS).El administrador de recursos usa esta interfaz para comunicarse con los programadores de subprocesos UMS.La interfaz IUMSScheduler hereda de la interfaz IScheduler.

IUMSThreadProxy (Estructura)

Una abstracción para un subproceso de ejecución.Si desea conceder al programador subprocesos programables en modo usuario (UMS), establezca el valor para el elemento de directiva de programador SchedulerKind en UmsThreadDefault e implemente la interfaz IUMSScheduler.Los subprocesos UMS se admiten únicamente en sistemas operativos de 64 bits con versión de Windows 7 y superior.

IUMSUnblockNotification (Estructura)

Representa una notificación del administrador de recursos indicando que un proxy del subproceso que había bloqueado y desencadenado un valor devuelto al contexto de programación designado del programador, se ha desbloqueado y está listo para ser programado.Esta interfaz no es válida una vez que el proxy del subproceso asociado al contexto de ejecución, devuelto desde el método GetContext, se vuelve a programar.

IVirtualProcessorRoot (Estructura)

Una abstracción para un subproceso del hardware en el que un proxy del subproceso se puede ejecutar.

Dd492819.collapse_all(es-es,VS.110).gifEnumeraciones

Name

Descripción

agent_status (Enumeración)

Los estados válidos para agent.

Agents_EventType (Enumeración)

Los tipos de eventos que se pueden realizar la traza utilizando la funcionalidad de seguimiento proporcionados por la biblioteca de agentes

ConcRT_EventType (Enumeración)

Los tipos de eventos que pueden atribuirse utilizando la funcionalidad de traza proporcionada por el runtime de simultaneidad.

Concrt_TraceFlags (Enumeración)

Marcas de traza para los tipos de evento

CriticalRegionType (Enumeración)

El tipo de región crítica dentro del que se encuentra un contexto.

DynamicProgressFeedbackType (Enumeración)

Utilizado por la directiva DynamicProgressFeedback para describir si los recursos para el programador se volverán a equilibrar según la información estadística recopilada desde el programador o sólo se basarán en procesadores virtuales que entran y salen del estado de inactividad a través de llamadas a los métodos Deactivate y Activate en la interfaz IVirtualProcessorRoot.Para obtener más información sobre las directivas del programador disponibles, vea PolicyElementKey (Enumeración).

join_type (Enumeración)

El tipo de un bloque de mensajería join.

message_status (Enumeración)

Las respuestas válidas para una oferta de un objeto message para un bloque.

PolicyElementKey (Enumeración)

Claves de directiva que describen aspectos de comportamiento del programador.Cada elemento de directiva se describe mediante un par clave-valor.Para obtener más información sobre las directivas del programador y su impacto en los programadores, vea Programador de tareas (Runtime de simultaneidad).

SchedulerType (Enumeración)

Utilizado por la directiva SchedulerKind para describir el tipo de subprocesos que el programador debería usar para contextos de ejecución subyacentes.Para obtener más información sobre las directivas del programador disponibles, vea PolicyElementKey (Enumeración).

SchedulingProtocolType (Enumeración)

Utilizado por la directiva SchedulingProtocol para describir qué algoritmo de programación utilizará el programador.Para obtener más información sobre las directivas del programador disponibles, vea PolicyElementKey (Enumeración).

SwitchingProxyState (Enumeración)

Se usa para denotar el estado en el que se encuentra un proxy del subproceso, cuando se ejecuta un cambio de contexto cooperativo a un proxy del subproceso diferente.

task_group_status (Enumeración)

Describe el estado de ejecución de un objeto task_group o structured_task_group.Un valor de este tipo lo devuelven numerosos métodos que esperan las tareas programadas para que un grupo de tareas se complete.

WinRTInitializationType (Enumeración)

Utilizado por la directiva de WinRTInitialization para describir si y cómo el Windows en tiempo de ejecución se inicializará en subprocesos del programador para una aplicación que se ejecuta en los sistemas operativos con la versión Windows 8 o posterior.Para obtener más información sobre las directivas del programador disponibles, vea PolicyElementKey (Enumeración).

Dd492819.collapse_all(es-es,VS.110).gifFunciones

Name

Descripción

Alloc (Función)

Asigna un bloque de memoria del tamaño especificado a partir del runtime de simultaneidad que almacena en memoria caché Suballocator.

asend (Función)

Sobrecargado.Una operación de envío asincrónica, que programa una tarea para propagar los datos al bloque de destino.

cancel_current_task (Función)

Cancela la tarea que se está ejecutando actualmente.Esta función se puede llamar en el cuerpo de una tarea de anular la ejecución de la tarea y de hacerlo para entrar en el estado de canceled .Aunque puede utilizar en respuesta a la función de is_task_cancellation_requested , también puede utilizarse en sí mismo, para iniciar la cancelación de la tarea que se está ejecutando actualmente.

No es un escenario admitido para llamar a esta función si no está dentro del cuerpo de task.Al hacerlo se dará lugar a un comportamiento no definido como un bloqueo o una pertenecen a la aplicación.

create_async (Función)

Crea una construcción asincrónica de Windows en tiempo de ejecución basada en un objeto proporcionado por el usuario lambda o la función.El tipo de valor devuelto de create_async es uno de IAsyncAction^, de IAsyncActionWithProgress<TProgress>^, de IAsyncOperation<TResult>^, o de IAsyncOperationWithProgress<TResult, TProgress>^ basado en la signatura lambda pasada al método.

create_task (Función)

Sobrecargado.Crea un objeto de PPL tarea .create_task se puede usar en cualquier parte habría utilizado un constructor de la tarea.Se proporciona principalmente por comodidad, porque permite el uso de la palabra clave de auto mientras crea encarga.

CreateResourceManager (Función)

Devuelve una interfaz que representa la instancia singleton del administrador de recursos del runtime de simultaneidad.El administrador de recursos es el responsable de asignar recursos a los programadores que desean cooperar entre sí.

DisableTracing (Función)

Deshabilita la traza en el runtime de simultaneidad.Se deja de utilizar esta función porque el seguimiento de ETW no está registrado de forma predeterminada.

EnableTracing (Función)

Habilita la traza en el runtime de simultaneidad.Se deja de utilizar esta función porque el seguimiento ETW está habilitado de manera predeterminada.

Free (Función)

Libera un bloque de memoria asignada previamente por el método de Alloc al runtime de simultaneidad que almacena en memoria caché Suballocator.

GetExecutionContextId (Función)

Devuelve un identificador único que se puede asignar a un contexto de ejecución que implementa la interfaz IExecutionContext.

GetOSVersion (Función)

Devuelve la versión del sistema operativo.

GetProcessorCount (Función)

Devuelve el número de subprocesos de hardware en el sistema subyacente.

GetProcessorNodeCount (Función)

Devuelve el número de nodos NUMA o paquetes de procesador en el sistema subyacente.

GetSchedulerId (Función)

Devuelve un identificador único que se puede asignar a un programador que implementa la interfaz IScheduler.

interruption_point (Función)

Crea un punto de interrupción de la cancelación.Si una eliminación está en curso en el contexto donde se llama a esta función, se producirá una excepción interna que anula la ejecución del trabajo paralelo que se está ejecutando actualmente.Si la cancelación no está en curso, la función no hace nada.

is_current_task_group_canceling (Función)

Devuelve una indicación de si el grupo de tareas que actualmente se ejecuta alineado en el contexto actual, está en medio de una cancelación activa (o lo estará pronto).Tenga en cuenta que si no hay ningún grupo de tareas que se ejecuta actualmente alineado en el contexto actual, se devolverá false.

is_task_cancellation_requested (Función)

Devuelve una indicación de si la tarea que se está ejecutando actualmente ha recibido una solicitud de cancelar la ejecución.Se solicite la cancelación en una tarea si la tarea se realizó con un token de cancelación, y el origen de token asociado a ese token se cancela.

make_choice (Función)

Sobrecargado.Construye un bloque de mensajería choice de un Scheduler opcional o ScheduleGroup y entre dos y diez orígenes de entrada.

make_greedy_join (Función)

Sobrecargado.Construye un bloque de mensajería greedy multitype_join de un Scheduler opcional o ScheduleGroup y entre dos y diez orígenes de entrada.

make_join (Función)

Sobrecargado.Construye un bloque de mensajería non_greedy multitype_join de un Scheduler opcional o ScheduleGroup y entre dos y diez orígenes de entrada.

make_task (Función)

Un método generador para crear un objeto task_handle.

parallel_buffered_sort (Función)

Sobrecargado.Organiza los elementos en un intervalo especificado en nondescending petición, o según un criterio de ordenación especificado por un predicado binario, en paralelo.Esta función es semánticamente similar a std::sort en que es comparar- haber basado, inestable, ordenación en contexto salvo que se necesita el espacio adicional de O(n) , y requiere una inicialización predeterminada para los elementos que se ordenan.

parallel_for (Función)

Sobrecargado.parallel_for itera sobre un intervalo de índices y ejecuta una función proporcionada por el usuario en cada iteración, en paralelo.

parallel_for_each (Función)

Sobrecargado.parallel_for_each aplica una función especificada a cada elemento de un intervalo, en paralelo.Es semánticamente equivalente a la función for_each en el espacio de nombres std, solo que la iteración sobre los elementos se realiza en paralelo, y el orden de iteración no está especificado.El argumento _Func debe admitir un operador de llamada de función del formulario operator()(T) donde el parámetro T es el tipo de elemento del contenedor que se recorre en iteración.

parallel_invoke (Función)

Sobrecargado.Ejecuta los objetos de función proporcionados como parámetros en paralelo y se bloquea hasta que hayan terminado de ejecutarse.Cada objeto de función puede ser una expresión lambda, un puntero a una función o cualquier otro objeto que admita una versión del operador de llamada de función con la firma void operator()().

parallel_radixsort (Función)

Sobrecargado.Organiza los elementos en un intervalo especificado en no un orden descendente utilizando un algoritmo de ordenación de base.Ésta es una función estable de ordenación que requiere una función de proyección que puede proyectar elementos estén ordenados en sin signo entero- como claves.Inicialización predeterminada se requiere para los elementos que se ordenan.

parallel_reduce (Función)

Sobrecargado.Calcula la suma de todos los elementos en un intervalo especificado calcular sumas parciales sucesivas, o calcula el resultado de los resultados parciales sucesivos obtenidos de igual forma de utilizar una operación binaria especificada distinto de suma, en paralelo.parallel_reduce es semánticamente similar a std::accumulate, salvo que requiere la operación binaria ser asociativa, y requiere un valor de identidad en lugar de un valor inicial.

parallel_sort (Función)

Sobrecargado.Organiza los elementos en un intervalo especificado en nondescending petición, o según un criterio de ordenación especificado por un predicado binario, en paralelo.Esta función es semánticamente similar a std::sort en que es una ordenación comparar- basada, inestable, en contexto.

parallel_transform (Función)

Sobrecargado.Se aplica un objeto especificado de la función a cada elemento de un intervalo de origen, o un par de elementos de dos intervalos de origen, y copia los valores devueltos del objeto function en un rango de destino, en paralelo.Este funcional es semánticamente equivalente a std::transform.

receive (Función)

Sobrecargado.Una implementación receive general, permitiendo a un contexto esperar datos de exactamente un origen y filtrar los valores que se aceptan.

run_with_cancellation_token (Función)

Ejecuta un objeto de función inmediatamente y sincrónicamente en el contexto de un token especificado de cancelación.

send (Función)

Sobrecargado.Una operación de envío sincrónico, que espera hasta el destino acepta o rechaza el mensaje.

set_task_execution_resources (Función)

Sobrecargado.Limita los recursos de ejecución utilizados por los subprocesos de trabajo internos del runtime de simultaneidad el conjunto de afinidad especificado.

Es válido llamar a este método antes de que se haya creado el administrador de recursos, o entre dos duraciones de administrador de recursos.Puede invocar varias veces cuando el administrador de recursos no existe en el momento de la invocación.Después de que se haya establecido un límite de afinidad, permanece en vigor hasta la llamada válida siguiente al método de set_task_execution_resources .

La máscara de afinidad que no necesita ser un subconjunto de la máscara de afinidad de proceso.La afinidad de proceso se actualizará en caso necesario.

swap (Función)

Intercambia los elementos de dos objetos concurrent_vector.

Trace_agents_register_name (Función)

Asocia el nombre dado al bloque o el agente de mensajes en el seguimiento de ETW.

try_receive (Función)

Sobrecargado.Una implementación try-receive general, permitiendo a un contexto buscar datos de exactamente un origen y filtrar los valores que se aceptan.Si los datos no están listos, este método devolverá false.

wait (Función)

Hace una pausa el contexto actual para un periodo de tiempo indicado.

when_all (Función)

Sobrecargado.Crea una tarea completar correctamente cuando todas las tareas proporcionadas como argumentos se completan correctamente.

when_any (Función)

Sobrecargado.Crea una tarea completar correctamente cuando las tareas cualquiera de las proporcionadas como argumentos se completan correctamente.

Dd492819.collapse_all(es-es,VS.110).gifOperadores

Name

Descripción

operator!= (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador no es igual que el objeto concurrent_vector del lado derecho.

operator&& (Operador)

Sobrecargado.Crea una tarea completar correctamente cuando ambas tareas proporcionadas como argumentos se completan correctamente.

operator|| (Operador)

Sobrecargado.Crea una tarea completar correctamente cuando cualquiera de las tareas proporcionadas como argumentos se completa correctamente.

operator< (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador es menor que el objeto concurrent_vector del lado derecho.

operator<= (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador es menor o igual que el objeto concurrent_vector del lado derecho.

operator== (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador es igual que el objeto concurrent_vector del lado derecho.

operator> (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador es mayor que el objeto concurrent_vector del lado derecho.

operator>= (Operador)

Comprueba si el objeto concurrent_vector en el lado izquierdo del operador es mayor o igual que el objeto concurrent_vector del lado derecho.

Dd492819.collapse_all(es-es,VS.110).gifConstantes

Name

Descripción

AgentEventGuid (Constante)

Un identificador GUID de categoría ({B9B5B78C (0713 )4898 - 21 A.C. 67949DCED07}) que describe los eventos ETW desencadenados por la biblioteca de agentes en el runtime de simultaneidad.

ChoreEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con quehaceres o tareas.

ConcRT_ProviderGuid (Constante)

El GUID del proveedor de ETW para el Runtime de simultaneidad.

CONCRT_RM_VERSION_1 (Constante)

Indica la compatibilidad de la interfaz del administrador de recursos definida en Visual Studio 2010.

ConcRTEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que no se describen más específicamente por otra categoría.

ContextEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con contextos.

COOPERATIVE_TIMEOUT_INFINITE (Constante)

Valor que indica que una espera nunca debe agotar el tiempo de espera.

COOPERATIVE_WAIT_TIMEOUT (Constante)

Valor que indica que se ha agotado el tiempo de espera.

INHERIT_THREAD_PRIORITY (Constante)

Valor especial para la clave de la directiva ContextPriority que indica que la prioridad del subproceso de todos los contextos en el programador debe ser la misma que la del subproceso que creó el programador.

LockEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con bloqueos.

MaxExecutionResources (Constante)

Valor especial para las claves MinConcurrency y MaxConcurrency de la directiva.Tiene como valor predeterminado el número de subprocesos de hardware en el equipo en la ausencia de otras restricciones.

PPLParallelForeachEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con el uso de la función parallel_for_each.

PPLParallelForEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con el uso de la función parallel_for.

PPLParallelInvokeEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con el uso de la función parallel_invoke.

ResourceManagerEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con el administrador de recursos.

ScheduleGroupEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con grupos de programación.

SchedulerEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con la actividad del programador.

VirtualProcessorEventGuid (Constante)

Una categoría GUID que describe eventos ETW desencadenados por el runtime de simultaneidad que están directamente relacionados con los procesadores virtuales.

Requisitos

encabezado: 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

Vea también

Otros recursos

Referencia (Runtime de simultaneidad)