Partager via


task_group, classe

La classe task_group représente une collection de travaux parallèles qui peuvent être mis en attente ou annulés.

class task_group;

Membres

Dd470722.collapse_all(fr-fr,VS.110).gifConstructeurs publics

Nom

Description

task_group::task_group, constructeur

Surchargé.Construit un nouvel objet task_group.

task_group::~task_group, destructeur

Détruit un objet task_group.Vous devez appeler la méthode wait ou run_and_wait sur l'objet avant exécution du destructeur, sauf si le destructeur s'exécute suite au déroulement de pile en raison d'une exception.

Dd470722.collapse_all(fr-fr,VS.110).gifMéthodes publiques

Nom

Description

task_group::cancel, méthode

Fait son possible pour annuler la sous-arborescence de travail rattachée à ce groupe de tâches.Chaque tâche planifiée sur le groupe de tâches sera annulée de manière transitive si possible.

task_group::is_canceling, méthode

Indique à l'appelant si le groupe de tâches est actuellement en cours d'annulation ou pas.Cela n'indique pas nécessairement que la méthode cancel a été appelée sur l'objet task_group (bien que dans ce cas la méthode retourne la valeur true).Cela peut être dû au fait que l'objet task_group s'exécute inline et qu'un groupe de tâches supplémentaire en haut de l'arborescence travail a été annulé.Dans de tels cas où l'exécution peut déterminer à l'avance que cette annulation passera via cet objet task_group, true sera également retourné.

task_group::run, méthode

Surchargé.Planifie une tâche sur l'objet task_group.Si un objet task_handle est passé comme paramètre à run, l'appelant est responsable de la gestion de la durée de vie de l'objet task_handle.La version de la méthode qui prend comme paramètre une référence à un objet de fonction implique l'allocation de tas à l'intérieur du runtime, ce qui peut donner de moins bons résultats que l'utilisation de la version qui prend comme paramètre une référence à un objet task_handle.La version qui prend le paramètre _Placement provoque la tâche d'être polarisé vers accéder à l'emplacement spécifié par ce paramètre.

task_group::run_and_wait, méthode

Surchargé.Planifie une tâche devant s'exécuter inline dans le contexte d'appel avec l'assistance de l'objet task_group pour une prise en charge complète de l'annulation.La fonction attend ensuite que tout le travail sur l'objet task_group soit terminé ou ait été annulé.Si un objet task_handle est passé comme paramètre à run_and_wait, l'appelant est responsable de la gestion de la durée de vie de l'objet task_handle.

task_group::wait, méthode

Attend que tout le travail sur l'objet task_group soit terminé ou ait été annulé.

Notes

Contrairement à la classe structured_task_group très restreinte, la classe task_group est une construction beaucoup plus générale.Il n'a aucune des restrictions décrites par structured_task_group.Les objets task_group peuvent être utilisés sans risque dans les threads et utilisés avec un format libre.L'inconvénient de la construction task_group est qu'elle peut ne peut fonctionner aussi bien que la construction structured_task_group pour les tâches qui exécutent des petites quantités de travail.

Pour plus d'informations, consultez Parallélisme des tâches (runtime d'accès concurrentiel).

Hiérarchie d'héritage

task_group

Configuration requise

En-tête : ppl.h

Accès concurrentiel del'espace de noms :

Voir aussi

Référence

concurrency, espace de noms

structured_task_group, classe

task_handle, classe