Partager via


combinable, classe

L'objet combinable<T> vise à fournir des copies des données spécifiques au thread pour exécuter des sous-calculs locaux de thread sans verrou pendant des algorithmes parallèles. À la fin de l'opération en parallèle, les sous-calculs spécifiques au thread peuvent être fusionnés en un résultat final. Cette classe peut être utilisée à la place d'une variable partagée et peut améliorer les performances si la variable partagée est susceptible de provoquer de nombreux conflits.

template<
   typename _Ty
>
class combinable;

Paramètres

  • _Ty
    Type de données du résultat fusionné final. Le type doit avoir un constructeur de copie et un constructeur par défaut.

Membres

Constructeurs publics

Nom

Description

combinable::combinable, constructeur

Surchargé. Construit un nouvel objet combinable.

combinable::~combinable, destructeur

Détruit un objet combinable.

Méthodes publiques

Nom

Description

combinable::clear, méthode

Efface tous résultats de calcul intermédiaires d'une utilisation précédente.

combinable::combine, méthode

Calcule une valeur finale à partir du jeu de sous-calculs de threads locaux en appelant la fonction d'association fournie.

combinable::combine_each, méthode

Calcule une valeur finale à partir du jeu de sous-calculs de threads locaux en appelant la fonction d'association fournie une fois pour chaque sous-calcul de thread local. Le résultat final est accumulé par l'objet de fonction.

combinable::local, méthode

Surchargé. Retourne une référence au sous-calcul de thread privé.

Opérateurs publics

Nom

Description

combinable::operator=, opérateur

Assigne à un objet combinable à partir d'un autre objet combinable.

Notes

Pour plus d'informations, consultez Conteneurs et objets parallèles.

Hiérarchie d'héritage

combinable

Configuration requise

En-tête : ppl.h

Accès concurrentiel del'espace de noms :

Voir aussi

Référence

concurrency, espace de noms