Runtime de simultaneidad
El runtime de simultaneidad de C++ ayuda a escribir aplicaciones paralelas sólidas, escalables y receptivas. Eleva el nivel de abstracción para que, de esta forma, no sea necesario administrar los detalles de infraestructura relacionados con la simultaneidad. También se puede usar para especificar directivas de programación que cumplan las demandas de calidad de servicio de las aplicaciones. Use estos recursos como ayuda para empezar a trabajar con el runtime de simultaneidad.
Para obtener documentación de referencia, consulte Referencia.
Sugerencia
El runtime de simultaneidad se basa principalmente en las características C++11 y adopta el estilo más moderno de C++. Para obtener más información, lea Aquí está otra vez C++.
Elegir características del runtime de simultaneidad
Artículo | Descripción |
---|---|
Información general | Le enseña por qué el runtime de simultaneidad es importante y describe sus características clave. |
Comparación con otros modelos de simultaneidad | Compara el runtime de simultaneidad con otros modelos de simultaneidad, como el grupo de subprocesos de Windows y OpenMP, para que pueda usar el modelo de simultaneidad que mejor se ajuste a los requisitos de la aplicación. |
Migración de OpenMP al Runtime de simultaneidad | Compara OpenMP con el runtime de simultaneidad y proporciona ejemplos sobre cómo migrar el código existente de OpenMP para usar el runtime de simultaneidad. |
Biblioteca de modelos de procesamiento paralelo (PPL) | Presenta el PPL, que proporciona bucles, tareas y contenedores paralelos. |
Biblioteca de agentes asincrónicos | Le explica cómo usar los agentes asincrónicos y el paso de mensajes para incorporar fácilmente las tareas de flujo de datos y canalización a las aplicaciones. |
Programador de tareas | Presenta el Programador de tareas, que le permite ajustar el rendimiento de las aplicaciones de escritorio que usa el runtime de simultaneidad. |
Paralelismo de tareas en PPL
Artículo | Descripción |
---|---|
Paralelismo de tareas Procedimiento para usar parallel.invoke para escribir una rutina de ordenación en paralelo Procedimiento para usar parallel.invoke para ejecutar operaciones paralelas Procedimiento para crear una tarea que se complete después de un retraso |
Describe las tareas y los grupos de tareas, que le pueden ayudar a escribir código asincrónico y a descomponer el trabajo paralelo en partes más pequeñas. |
Tutorial: Implementar futuros | Muestra cómo combinar las características del runtime de simultaneidad para llevar a cabo más tareas. |
Tutorial: Quitar trabajo de un subproceso de la interfaz de usuario | Muestra cómo mover el trabajo realizado por el subproceso de interfaz de usuario en una aplicación MFC a un subproceso de trabajo. |
Procedimientos recomendados en la biblioteca de modelos paralelos Procedimientos recomendados generales en el Runtime de simultaneidad |
Proporciona sugerencias y prácticas recomendadas para trabajar con el PPL. |
Paralelismo de datos en PPL
Cancelar tareas y algoritmos paralelos
Artículo | Descripción |
---|---|
Cancelación en la biblioteca PPL | Describe el rol de cancelación en PPL, incluyendo cómo iniciar y responder a las solicitudes de cancelación. |
Procedimiento para usar la cancelación para interrumpir un bucle Parallel Procedimiento para usar el control de excepciones para interrumpir un bucle Parallel |
Muestra dos mecanismos para cancelar el trabajo de datos en paralelo. |
Aplicaciones de la Plataforma universal de Windows
Artículo | Descripción |
---|---|
Creación de operaciones asincrónicas en C++ para aplicaciones UWP | Describe algunos de los puntos clave para tener en cuenta cuando se usa el runtime de simultaneidad para generar operaciones asincrónicas en una aplicación de la UWP. |
Tutorial: Conectar mediante tareas y solicitudes HTTP XML | Muestra cómo combinar tareas PPL con interfaces IXMLHTTPRequest2 y IXMLHTTPRequest2Callback para enviar solicitudes HTTP GET y POST a un servicio web en una aplicación de la UWP. |
ejemplos de aplicaciones de Windows Runtime | Contiene ejemplos de código descargables y aplicaciones de demostración para Windows Runtime. |
Programación del flujo de datos en la Biblioteca de agentes asincrónicos
Control de excepciones y depuración
Artículo | Descripción |
---|---|
Control de excepciones | Describe cómo trabajar con excepciones en el runtime de simultaneidad. |
Herramientas de diagnóstico paralelo | Le enseña cómo ajustar las aplicaciones y hacer un uso más eficaz del runtime de simultaneidad. |
Optimizar el rendimiento
Artículo | Descripción |
---|---|
Herramientas de diagnóstico paralelo | Le enseña cómo ajustar las aplicaciones y hacer un uso más eficaz del runtime de simultaneidad. |
Instancias de Scheduler Procedimiento para administrar una instancia de Scheduler Directivas de Scheduler Procedimiento para especificar directivas de Scheduler concretas Procedimiento para crear agentes que usen directivas de Scheduler concretas |
Muestra cómo administrar las instancias y las directivas de programador. En las aplicaciones de escritorio, las directivas de programador le permiten asociar reglas específicas con tipos concretos de cargas de trabajo. Por ejemplo, puede crear una instancia de programador para ejecutar algunas tareas con una prioridad elevada de subproceso y usar el programador predeterminado para ejecutar con otras tareas con la prioridad normal de subproceso. |
Grupos de programación Procedimiento para usar grupos de programación para influir en el orden de ejecución |
Muestra cómo usar los grupos de programación para establecer afinidades entre las tareas relacionadas y agruparlas. Por ejemplo, es posible que necesite un alto grado de emplazamiento entre tareas relacionadas cuando estas tareas se benefician de ejecutarse en el mismo nodo del procesador. |
Tareas ligeras | Explica cómo se pueden usar las tareas ligeras para crear trabajo que no requiere equilibrio de carga ni cancelación, y cómo resultan útiles para adaptar el código existente para su uso con el runtime de simultaneidad. |
Contextos Procedimiento para usar la clase Context para implementar un semáforo cooperativo Procedimiento para usar la suscripción excesiva para compensar la latencia |
Describe cómo controlar el comportamiento de los subprocesos que administra el runtime de simultaneidad. |
Funciones de administración de memoria Procedimiento para usar Alloc y Free para mejorar el rendimiento de la memoria |
Describe las funciones de administración de memoria que el runtime de simultaneidad proporciona para ayudarle a asignar y liberar memoria de manera simultánea. |
Recursos adicionales
Artículo | Descripción |
---|---|
Patrones y sugerencias de programación Async en Hilo (aplicaciones de la Tienda Windows que usan C++ y XAML) | Obtenga información sobre el uso del runtime de simultaneidad para implementar operaciones asincrónicas en Hilo, una aplicación de Windows Runtime que usa C++ y XAML. |
Blog de programación en paralelo en código nativo | Proporciona artículos de blog detallados adicionales sobre la programación paralela en el runtime de simultaneidad. |
Foro de informática en paralelo en C++ y código nativo | Le permite participar en los debates de la comunidad sobre el runtime de simultaneidad. |
Programación en paralelo | Le enseña el modelo de programación paralelo que está disponible en .NET Framework. |